int res; int k; public int kthLargest(TreeNode root, int k) { this.k = k; dfs(root); return res; } public void dfs(TreeNode node){ // 以右 -> 根 -> 左的方式遍历树 即可得到倒序 方便查找第k大节点 if (node == null){ return; } dfs(node.right); // k == 0 已经找到 提前跳出树的遍历 if (k == 0){ return; } // 找到第K大节点 赋值res if (--k == 0){ res = node.val; } dfs(node.left); }
剑指Offer-55二叉搜索树的第k大节点
猜你喜欢
转载自blog.csdn.net/a792396951/article/details/114255257
今日推荐
周排行