88 字
1 分钟
LeetCode 面试经典150题 [79/150 二叉搜索树中第k小的元素]
题目描述
给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。
示例 1:
输入:root = [3,1,4,null,2], k = 1输出:1示例 2:
输入:root = [5,3,6,2,4,null,null,1], k = 3输出:3个人C++解答
搜索树中序遍历得到递增序列,然后取第k个元素
/** * 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 { vector<int> vec;public: int kthSmallest(TreeNode* root, int k) { inOrder(root); return vec[k-1]; } void inOrder(TreeNode* root){ if(root == nullptr) return; inOrder(root->left); vec.push_back(root->val); inOrder(root->right); }}; 分享
如果这篇文章对你有帮助,欢迎分享给更多人!
LeetCode 面试经典150题 [79/150 二叉搜索树中第k小的元素]
https://ericonline.cn/posts/leetcode-面试经典150题-79-150-二叉搜索树中第k小的元素/ 部分信息可能已经过时
相关文章 智能推荐
1
LeetCode 面试经典150题 [80/150 验证二叉搜索树]
LeetCode 题解 2024-07-31
2
LeetCode 面试经典150题 [78/150 二叉搜索树的最小绝对差]
LeetCode 题解 2024-07-31
3
LeetCode 面试经典150题 [75/150 二叉树的层平均值]
LeetCode 题解 2024-07-31
4
LeetCode 面试经典150题 [74/150 二叉树的右视图]
LeetCode 题解 2024-07-31
5
LeetCode 面试经典150题 [64/150 二叉树的最大深度]
LeetCode 题解 2024-07-11