第K个最小的BST节点值

已关闭
dadingPython / C++入场费 2 金币1 次提交

题目描述

给定一棵二叉搜索树的根节点和一个整数 k,请你返回这棵树中第 k 小的节点值。

输入格式

第一行是一个整数 k。第二行是树的节点数 n (1≤n≤1000)。接下来 n+1 行描述树的结构:第一行是根节点序号 r(如 r=1 表示第1个节点为根)。接下来 n 行,每行三个整数 idx, val, left_idx,描述每个节点的索引、节点值、以及左子节点索引(-1 表示无左子),最后一行类似格式描述右子节点。节点的索引顺序即输入顺序(数组下标 0~n-1)。

输出格式

输出一个整数,表示第 k 小的节点值。

输入输出样例

样例 1

输入:

2
3
1 5 -1
1 -1 2
1 -1 -1

输出:

5

说明/提示

BST 的中序遍历得到升序序列。