C++简洁代码(中序遍历):

二叉搜索树的第k个结点

http://www.nowcoder.com/questionTerminal/ef068f602dde4d28aab2b210e859150a

C++简洁代码:

class Solution {
public:
    TreeNode* KthNode(TreeNode* pRoot, int k) {
        stack<TreeNode*> stk;
        TreeNode* cur = pRoot;
        while(cur || stk.size()) {
            while(cur) {
                stk.push(cur);
                cur = cur->left;
            }
            cur = stk.top();
            stk.pop();
            if(-- k == 0) return cur;
            cur = cur->right;
        }
        return nullptr;
    }
};
全部评论

相关推荐

讯飞老萌新:站住!有人25还没有找到工作的吗
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务