import java.util.ArrayList; import java.util.Arrays; public class Create { public TreeNode CreateTree(int[] preorder,int[] inorder) { if (preorder.length == 0 || inorder.length == 0) { return null; //前序 中序 长度都为0 返回空 } TreeNode root = new TreeNode(preorder[0]);//从前序中获取根节点。 int rootIndex = 0; //获取根节点在中序遍历中的位置 for (int i = 0; i < inorder.length; i++) { if (root.val == inorder[i]) { rootIndex = i; } } int[] Inorderleft = Arrays.copyOfRange(inorder, 0, rootIndex);//把中序遍历从根节点拆开左右两部分 这是左部分 int[] Inorderright = Arrays.copyOfRange(inorder, rootIndex + 1, inorder.length);//把中序遍历从根节点拆开 右部分 int[] Preorderleft= Arrays.copyOfRange(preorder,1,rootIndex);//先序遍历从第一个非根节点的起到根节点在中序中所对应的位置号分为左部分 int[] Preorderright=Arrays.copyOfRange(preorder,rootIndex,preorder.length);//右部分 root.left=CreateTree(Preorderleft,Inorderleft); root.right=CreateTree(Preorderright,Inorderright); return root; } }
时间: 2024-04-17 10:29:30 浏览: 16
您好!您的代码是用于根据前序遍历和中序遍历构建二叉树的函数。这个函数通过递归地构建左子树和右子树来创建整个二叉树。首先,它从前序遍历中获取根节点,然后在中序遍历中找到根节点的索引位置。然后,它将中序遍历拆分为左部分和右部分,并将前序遍历也相应地拆分为左部分和右部分。接下来,它递归地调用自身来构建左子树和右子树,并将其连接到根节点上。最后,它返回根节点。这样就完成了二叉树的构建。
如果您有任何关于这段代码的问题,请随时提问!
相关问题
什么时候需要使用import java.util.ArrayList; import java.util.List;
当我们需要在 Java 代码中使用 ArrayList 和 List 这两个类时,就需要使用 import java.util.ArrayList; import java.util.List; 这两行代码。因为 ArrayList 和 List 都是 Java 标准库中的类,不在默认的包中,所以我们需要通过 import 语句来引入这些类,使得编译器能够识别并使用它们。如果不进行导入,编译器将无法识别 ArrayList 和 List,也就无法在代码中使用它们。
import java.util.arraylist
import java.util.ArrayList 是Java语言中导入ArrayList类的语句。ArrayList是Java中的一个动态数组类,可以动态地增加或删除元素,而不需要手动调整数组大小。这个类位于java.util包中,因此需要使用import语句来导入该类。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)