5170.有序数组构造树

通过数:7提交数:15学校:力扣hot100考研机试真题 题目列表 标签
题目描述 给定一个严格递增的整数数组,将其转换为一棵高度平衡的二叉搜索树。高度平衡是指每个节点的左、右子树高度之差不超过 $1$。 为了使结果唯一,递归处理数组下标区间 $[l,r]$ 时,选择下标 $\lfloor(l+r)/2\rfloor$ 的元素作为当前子树根节点,左、右区间分别构造左、右子树。 输出的二叉树使用层序序列表示:序列首项是根节点;随后对每个非空节点依次输出左、右孩子,空孩子输出 null;最后删除序列末尾所有连续的 null。 输入格式 第一行输入一个整数 $n$,表示数组长度。 第二行输入 $n$ 个严格递增的整数 $a 1,a 2,\ldots,a n$。 输出格式 第一行输出层序序列的标记数量 $k$。 第二行输出 $k$ 个用空格分隔的标记,每个标记为节点值或 null,序列化规则遵循题目描述。 数据范围 $1\le n\le10^4$ $-10^4\le a i\le10^4$ $a 1<a 2<\cdots<a n$ 输入样例 5 -10 -3 0 5 9 输出样例 7 0 -10 5 null -3 null 9
C
补全
点击调试按钮即可调试代码。

点击提交按钮即可提交代码。