您的位置:首页 > Web前端

【剑指offer】题63:二叉搜索树的第k个节点

2017-09-03 11:33 369 查看
TreeNode* KthNode_core(TreeNode* pRoot, int& k)
{
TreeNode* target(NULL);
if (pRoot->left!=NULL)
{
target = KthNode_core(pRoot->left, k);
}
if (target == NULL)
{
k--;
if (k == 0)
{
target = pRoot;
}
}
if (target == NULL && pRoot->right!=NULL)
{
target = KthNode_core(pRoot->right, k);
}
return target;
}

TreeNode* KthNode(TreeNode* pRoot, int k)
{
if (pRoot == NULL)
{
return pRoot;
}
return KthNode_core(pRoot, k);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: