先理解一下:题目是{5 3 7 2 4 6 8 },画一下这个二叉树就是,2,3,4,一个树,6,7,8一个树,然后3,5,7,一个树。
二叉搜索树的定义是,它的左子树上的所有节点的值均小于它的根节点的值,所以直接遍历就可以了。
class Solution: # 返回对应节点TreeNode def KthNode(self, pRoot, k): # write code here self.k = k self.res = None def eses(node): if not node: return if node.left: eses(node.left) if self.k == 1: self.res = node self.k -= 1 if node.right: eses(node.right) eses(pRoot) return self.res