Leetcode230. 二叉搜索树中第K小的元素

给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k个最小元素(从 1 开始计数)。

解题思路:中序遍历

代码如下:

java 复制代码
public int kthSmallest(TreeNode root, int k) {
        Stack<TreeNode> s = new Stack<>();
        while(root != null || !s.isEmpty()){
            while(root != null){
                s.push(root);
                root = root.left;
            }
            root = s.pop();
            k--;
            if(k == 0){
                break;
            }
        root = root.right;
           
        }
        return root.val;
      
    }
    
相关推荐
篮l球场11 分钟前
合并 K 个升序链表
算法
苦藤新鸡11 分钟前
87.分割成两个等和数组 leetcode416
数据结构·算法·leetcode
炽烈小老头13 分钟前
【 每天学习一点算法 2026/03/11】从前序与中序遍历序列构造二叉树
学习·算法
进击切图仔14 分钟前
ROS 行为(Action)机制
算法
飞Link16 分钟前
概率图模型的基石:隐马可夫模型 (HMM) 深度解析
开发语言·python·算法
_日拱一卒16 分钟前
LeetCode(力扣):验证回文串
算法·leetcode·职场和发展
Eward-an18 分钟前
LeetCode 128. 最长连续序列(O(n)时间复杂度详解)
数据结构·算法·leetcode
Frostnova丶19 分钟前
LeetCode 1009 & 476 数字的补数
算法·leetcode
CppBlock20 分钟前
HPX vs TBB vs OpenMP:并行任务模型对比
c++·算法