看了下用 js 写的都是递归,这里放一个迭代的版本。
function KthNode( proot , k ) {
if(!proot || k < 1) return -1;
const stk = [];
let i = 0;
while(proot || stk.length){
while(proot){
stk.push(proot)
proot = proot.left
}
proot = stk.pop();
i++;
if(i === k){
return proot.val;
}
proot = proot.right;
}
return -1;
}
module.exports = {
KthNode : KthNode
};