C++速通LeetCode中等第25题-验证二叉搜索树(中序遍历堆栈迭代法)

cpp 复制代码
class Solution {
public:
    int kthSmallest(TreeNode* root, int k) {
        stack<TreeNode *> stack;
        while (root != nullptr || stack.size() > 0) {
            while (root != nullptr) {
                stack.push(root);
                root = root->left;
            }
            root = stack.top();
            stack.pop();
            --k;
            if (k == 0) {
                break;
            }
            root = root->right;
        }
        return root->val;
    }
};
相关推荐
DLR-SOFT15 分钟前
C#如何把写好的类编译成dll文件
开发语言·c#
ZShiJ23 分钟前
【题解】—— LeetCode一周小结38
算法·leetcode·职场和发展
赤橙红的黄28 分钟前
策略模式+模版模式+工厂模式
java·开发语言·策略模式
码农超哥同学33 分钟前
Python知识点:Python垃圾回收机制深入剖析
开发语言·python·面试·编程
engrave行而不辍1 小时前
Java接口详解
java·开发语言·算法
小周的C语言学习笔记1 小时前
鹏哥C语言46-48---函数的递归和迭代
c语言·开发语言
橘子真甜~1 小时前
Linux基础3-基础工具4(git),冯诺依曼计算机体系结构
linux·运维·服务器·开发语言·git
痛&快乐着1 小时前
C++高精度计时方法总结(测试函数运行时间)
c++
Ddddddd_1581 小时前
C++ | Leetcode C++题解之第419题棋盘上的战舰
c++·leetcode·题解
CrazyZ1261 小时前
C++第九章编程练习答案
开发语言·c++·笔记·学习·算法