剑指 二叉树k大结点-补充
二叉搜索树的第k个结点
http://www.nowcoder.com/questionTerminal/ef068f602dde4d28aab2b210e859150a
需要通过调整k值,来判断是否为k大结点。需要使用全局变量。
# -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: # 返回对应节点TreeNode def KthNode(self, pRoot, k): # write code here self.result=None self.count=0 def inorder(head,k): if not head: return if head.left and self.count<k: inorder(head.left,k) self.count+=1 if self.count==k: self.result= head if head.right and self.count<k: inorder(head.right,k) if pRoot==None or k<0: return None inorder(pRoot,k) return self.result