Skip to content

Latest commit

 

History

History
27 lines (21 loc) · 529 Bytes

54. 二叉搜索树的第k大节点.md

File metadata and controls

27 lines (21 loc) · 529 Bytes

解题思路

顺序存数组找

中序遍历二叉搜索树得到的结果是一个递增数组,可以利用这个特性,先中序存下这个递增数组,再返回倒数第 k 个值

var nums []int
func kthLargest(root *TreeNode, k int) int {
    nums = make([]int, 0)
    dfs(root)
    return nums[len(nums)-k]
}

func dfs(root *TreeNode) {
    if root == nil {
        return
    }
    dfs(root.Left)
    nums = append(nums, root.Val)
    dfs(root.Right)
}