《剑指Offer》刷题笔记——面试题54. 二叉搜索树的第k大节点

难度:简单

一、题目描述:

在这里插入图片描述

二、解题分析:

1、剑指解析

在这里插入图片描述

2、代码实现

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def kthLargest(self, root: TreeNode, k: int) -> int:
        if not root: return 
        stack = []
        res = []
        while root or stack:
            while root:
                stack.append(root)
                root = root.right
            root = stack.pop()
            res.append(root.val)
            if len(res)==k: return res[-1]
            root = root.left
        return
发布了132 篇原创文章 · 获赞 154 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_34108714/article/details/104753959