使用 int 的二叉搜索树创建一个包含小于给定整数x值的所有整数的链表。
我试过什么?
1)残酷的解决方案(低效)
BST的 有序访问,我在列表中为Bst中的每个整数插入一个节点,然后我从x开始释放列表的每个节点
2)更高效但错误
我进行了搜索,当我找到 x 时,我创建了一个列表,其中包含对我找到 x 的节点的左儿子的有序访问。
这显然是错误的,例如考虑以下 BST:
10
/ \
9 11
/ \
5 15
/ \ / \
1 8 13 19
/ \
12 14
使用此解决方案,如果 x=15 我只考虑 {12,13,14},它只适用于 x=root。
问题是我该怎么办?