题解 | #二叉搜索树的第k个结点#python 解法
二叉搜索树的第k个结点
http://www.nowcoder.com/practice/ef068f602dde4d28aab2b210e859150a
其实考的就是中序遍历。 要注意检查pRoot,k(特别是k值)
def KthNode(self, pRoot, k): # write code here # 按大小顺序输出所有节点的值( 即是中序遍历) # idx取出所求的值, 返回。 # 第0大???要检查k值 if(pRoot==None or k==0): return None list_inorder=[] def inorder(root): if(root ==None): return inorder(root.left) list_inorder.append(root) inorder(root.right) inorder(pRoot) if(k>len(list_inorder)): return None return (list_inorder[k-1])