54-二叉搜索树的第K大节点

题目:给定一棵二叉搜索树,请找出其中第K大的节点。

def inorder(head,res):
    p = head
    if p:
        inorder(p.left,res)
        res.append(p.data)
        inorder(p.right,res)

def tree_k(head,k):
    res = []
    inorder(head, res)
    return res[k-1]

  注:采用中序遍历,遍历完成后取出第K个。官方给出的方案是直接取到第K个节点就停止,目前没看明白,后期会优化。

posted @ 2019-09-17 15:16  尘世中一个迷途小书童  阅读(146)  评论(0编辑  收藏  举报