二叉树的建立java版
时间: 2023-10-26 20:49:40 浏览: 90
二叉树的建立可以通过递归的方式来实现,在Java中可以定义一个二叉树的节点类,然后使用递归方法来逐步建立树。
首先,定义一个二叉树的节点类:
```java
class TreeNode {
int val;
TreeNode left;
TreeNode right;
public TreeNode(int val) {
this.val = val;
}
}
```
然后,可以编写一个递归方法来建立二叉树:
```java
public class BinaryTreeBuilder {
public TreeNode buildTree(int[] nums) {
if (nums == null || nums.length == 0) {
return null;
}
return buildTree(nums, 0, nums.length - 1);
}
private TreeNode buildTree(int[] nums, int start, int end) {
if (start > end) {
return null;
}
int mid = (start + end) / 2;
TreeNode root = new TreeNode(nums[mid]);
root.left = buildTree(nums, start, mid - 1);
root.right = buildTree(nums, mid + 1, end);
return root;
}
}
```
这样,你就可以使用 `BinaryTreeBuilder` 类中的 `buildTree` 方法来建立二叉树了。例如:
```java
int[] nums = {1, 2, 3, 4, 5};
BinaryTreeBuilder builder = new BinaryTreeBuilder();
TreeNode root = builder.buildTree(nums);
```
这样就建立了一个有序数组 `{1, 2, 3, 4, 5}` 对应的二叉搜索树。当然,你也可以根据需要修改 `buildTree` 方法来适应其他的二叉树建立需求。
阅读全文