JZ7 重建二叉树
前置知识
Arrays.copyOfRange
是 Java 中 java.util.Arrays
类的一个静态方法,用于复制数组的指定范围。这个方法可以用来创建一个新的数组,并将原数组中指定范围内的元素复制到新数组中。
方法签名
java复制代码
public static int[] copyOfRange(int[] original, int from, int to)
original
: 要复制的原数组。from
: 复制的起始索引(包含)。to
: 复制的结束索引(不包含)。
补充:Arrays标准库
Java 的 Arrays
类主要提供以下功能:
- 排序:
Arrays.sort()
:对数组进行排序,可以处理基本类型和对象类型的数组。
- 查找:
Arrays.binarySearch()
:在已排序的数组中查找元素,返回元素的索引。
- 复制:
Arrays.copyOf()
:复制数组并返回新的数组,可以指定新数组的长度。Arrays.copyOfRange()
:复制指定范围内的数组部分。
- 比较:
Arrays.equals()
:比较两个数组是否相等。Arrays.deepEquals()
:比较嵌套数组的内容是否相等。
- 填充:
Arrays.fill()
:用指定的值填充整个数组或数组的指定范围。
- 转换为字符串:
Arrays.toString()
:将数组转换为字符串,以便打印。Arrays.deepToString()
:用于打印多维数组的内容。
学习
前序遍历用来获取根节点
中序遍历用来区分子树
方法
方法一:递归
- 通过前序遍历找到根节点
- 中序遍历找到根节点的位置
- 区分左子树和右子树
- 再把子树传入函数进行递归
- 传入数组长度为0时候返回null