这道题是在BST上找到第k个最小的数,BST本身便是一个从左到右依次排序的树,问题的难点在于你如何排序,排序好了之后,第k个就一目了然了。代码如下:
a = []
def sort(root):
if root == None:
return 0
if root.left != None:
sort(root.left)
a.append(root.val)
if root.right != None:
sort(root.right)
sort(root)
return a[k - 1]
本文介绍了一种在二叉搜索树(BST)中查找第K个最小元素的方法。利用BST的特性进行中序遍历,将节点值存储到列表中实现排序,最后返回第K个元素。
310

被折叠的 条评论
为什么被折叠?



