【leetcode hot 100 230】二叉搜索树中第K小的元素

解法一:从小到大输出到list中,取list[k-1]就是第k小的元素

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    List<Integer> list = new ArrayList<>();

    public int kthSmallest(TreeNode root, int k) {
        // 从小到大输出到list中,取list[k-1]就是第k小的元素
        inoder(root);
        return list.get(k-1); 
    }

    public void inoder(TreeNode root){
        if(root==null){
            return;
        }
        inoder(root.left);
        list.add(root.val);
        inoder(root.right);
    }
}

注意:

  • list[k-1]是第k小的元素,而不是list[k]
相关推荐
2401_8401052010 分钟前
GESP C++5级 2025年6月编程2题解:最大公因数
数据结构·c++·算法
未知陨落14 分钟前
LeetCode:56.子集
算法·leetcode·深度优先
PAK向日葵16 分钟前
【算法导论】一道涉及到溢出处理的笔试题
算法·面试
清***鞋25 分钟前
转行AI产品如何准备面试
人工智能·面试·职场和发展
成成成成成成果25 分钟前
软件测试面试八股文(一)
面试·职场和发展·测试用例·压力测试
哈泽尔都1 小时前
运动控制教学——5分钟学会样条曲线算法!(三次样条曲线,B样条曲线)
c++·人工智能·算法·机器学习·matlab·贪心算法·机器人
小镇学者1 小时前
【NOI】在信奥赛中 什么是函数交互题?
算法
未知陨落1 小时前
LeetCode:62.N皇后
算法·leetcode
测试老哥2 小时前
软件测试之单元测试详解
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例