题目来源:链接
题目描述:
给定一棵二叉搜索树,请找出其中第k大的节点。
示例 1:
输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2 输出: 4
代码实现:
def func(root,k):
def dfs(root):
if not root:
return None
dfs(root.right)
if self.k == 0:
return
self.k -= 1
if self.k == 0:
self.res = root.val
dfs(root.left)
self.k = k
dfs(root)
return self.res
解题思路:
因为要找第k大的数字,所以,用中序遍历的的对称来做
本文探讨了在二叉搜索树中寻找第K大节点的问题,通过中序遍历的逆序方式,有效地解决了这一算法挑战。示例展示了输入为特定二叉搜索树与K值时的解决方案。
442

被折叠的 条评论
为什么被折叠?



