力扣230. 二叉搜索树中第K小的元素

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

示例 1:输入:root = [3,1,4,null,2], k = 1     输出:1

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
 * };
 */
class Solution {
public:
    int value=0;
    int cnt=0;
    void dfs(TreeNode* node,int k){
        if(!node){return;}
        dfs(node->left,k);
        cnt++;
        if(cnt==k){value=node->val;}//二叉搜索树中序遍历即为顺序遍历,返回第k个节点的值
        dfs(node->right,k);
    }
    int kthSmallest(TreeNode* root, int k) {
        int cnt=0;
        dfs(root,k);
        return value;
    }
};

相关推荐

  1. 230. 搜索K元素

    2024-06-19 03:34:02       39 阅读
  2. 100】230.搜索k元素

    2024-06-19 03:34:02       48 阅读
  3. Leetcode-230.搜索k元素(Python)

    2024-06-19 03:34:02       40 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-19 03:34:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-19 03:34:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-19 03:34:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-19 03:34:02       18 阅读

热门阅读

  1. linux hosts配置 ip映射

    2024-06-19 03:34:02       6 阅读
  2. Web前端中的jQuery:深度解析与应用探索

    2024-06-19 03:34:02       8 阅读
  3. typescript-泛型

    2024-06-19 03:34:02       5 阅读
  4. Python 3.13 有什么新变化

    2024-06-19 03:34:02       5 阅读
  5. 062、Python 解决命名冲突的两种方式

    2024-06-19 03:34:02       5 阅读
  6. Ribbon与Nginx的区别

    2024-06-19 03:34:02       7 阅读
  7. QT day04

    QT day04

    2024-06-19 03:34:02      5 阅读
  8. Blender下使用python设置骨骼旋转

    2024-06-19 03:34:02       6 阅读
  9. ArcGIS Pro SDK (五)内容 1 地图工程

    2024-06-19 03:34:02       5 阅读