静态链表实现二叉排序树
时间限制: 1 s
内存限制: 128 MB
提交:12
正确:7
分值:99
题目描述
使用静态链表(数组)实现二叉排序树(BST)的构建。给定 N 个元素,按照二叉排序树的规则将它们插入到树中,并输出每个节点的信息。
每个节点包含三个字段:
索引为 -1 表示没有对应的子节点。
输入
第一行:整数 N (1 ≤ N ≤ 1000),表示元素个数
第二行:N 个整数,用空格分隔,表示要插入二叉排序树的元素
输出
输出 N 行,每行格式为:左子节点索引,节点数据,右子节点索引
注意:节点索引从 1 开始编号,根节点索引为 1
样例
样例输入:
5
50 30 70 20 40
样例输出:
2,50,3
4,30,5
-1,70,-1
-1,20,-1
-1,40,-1
样例输入:
3
10 5 15
样例输出:
2,10,3
-1,5,-1
-1,15,-1
样例输入:
1
100
样例输出:
-1,100,-1
样例输入:
4
1 2 3 4
样例输出:
-1,1,2
-1,2,3
-1,3,4
-1,4,-1
样例输入:
4
4 3 2 1
样例输出:
2,4,-1
3,3,-1
4,2,-1
-1,1,-1
样例输入:
7
50 30 70 20 40 60 80
样例输出:
2,50,3
4,30,5
6,70,7
-1,20,-1
-1,40,-1
-1,60,-1
-1,80,-1
样例输入:
6
40 20 60 10 30 50
样例输出:
2,40,3
4,20,5
6,60,-1
-1,10,-1
-1,30,-1
-1,50,-1
提示
-
1 ≤ N ≤ 1000
-
-10^9 ≤ 元素值 ≤ 10^9
-
保证输入的元素互不相同
提交人