博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode230. 二叉搜索树中第K小的元素
阅读量:5282 次
发布时间:2019-06-14

本文共 902 字,大约阅读时间需要 3 分钟。

题目链接:

题目:

给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素。

说明:

你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。

示例 1:

输入: root = [3,1,4,null,2], k = 1   3  / \ 1   4  \   2输出: 1

示例 2:

输入: root = [5,3,6,2,4,null,null,1], k = 3

   5      / \     3   6    / \   2   4  / 1输出: 3 思路:中序遍历,统计即可。
1 /** 2  * Definition for a binary tree node. 3  * struct TreeNode { 4  *     int val; 5  *     TreeNode *left; 6  *     TreeNode *right; 7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} 8  * }; 9  */10 class Solution {11 public:12     int kthSmallest(TreeNode* root, int k) {13         int val;14         dfs(root,val,k);15         return val;16     }17     void dfs(TreeNode *root,int &val,int &k){18         if(root==NULL) return;19         dfs(root->left,val,k);20         if((--k)==0){val=root->val;return;}21         dfs(root->right,val,k);22     }23 };

 

转载于:https://www.cnblogs.com/zhuixunfighting/p/10085687.html

你可能感兴趣的文章
Java大数——a^b + b^a
查看>>
简单的数据库操作
查看>>
帧的最小长度 CSMA/CD
查看>>
普通求素数和线性筛素数
查看>>
PHP截取中英文混合字符
查看>>
电子眼抓拍大解密
查看>>
51nod1076 (边双连通)
查看>>
Linux pipe函数
查看>>
Zerver是一个C#开发的Nginx+PHP+Mysql+memcached+redis绿色集成开发环境
查看>>
程序的静态链接,动态链接和装载 (补充)
查看>>
关于本博客说明
查看>>
[Kaggle] Sentiment Analysis on Movie Reviews
查看>>
价值观
查看>>
mongodb命令----批量更改文档字段名
查看>>
国外常见互联网盈利创新模式
查看>>
android:scaleType属性
查看>>
shell脚本
查看>>
Upload Image to .NET Core 2.1 API
查看>>
【雷电】源代码分析(二)-- 进入游戏攻击
查看>>
Linux中防火墙centos
查看>>