概述
时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M 热度指数:482786
本题知识点: 树
题目描述
给定一棵二叉搜索树,请找出其中的第k小的TreeNode结点。
示例1
输入
{5,3,7,2,4,6,8},3
返回值
{4}
说明
按结点数值大小顺序第三小结点的值为4
思路:中序遍历得到从小到大排序的数组,读取第k-1个即可
/* function TreeNode(x) {
this.val = x;
this.left = null;
this.right = null;
} */
function KthNode(pRoot, k) {
let arr = []
dfs(pRoot, arr)
return arr[k - 1]
}
function dfs(root, arr) {
if (!root) return null
if (root.left) dfs(root.left, arr)
arr.push(root)
if (root.right) dfs(root.right, arr)
}
最后
以上就是包容诺言为你收集整理的剑指Offer JZ62 二叉搜索树的第k个结点(JavaScript)的全部内容,希望文章能够帮你解决剑指Offer JZ62 二叉搜索树的第k个结点(JavaScript)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复