欢迎光临散文网 会员登陆 & 注册

LeetCode-230-二叉搜索树中第K小的元素

2022-04-16 21:40 作者:雄狮虎豹  | 我要投稿

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

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

示例说明请见LeetCode官网。

来源:力扣(LeetCode)   

链接:https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst/   

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解法一:二叉树的中序遍历

二叉搜索树的特性即中序遍历结果就是节点的顺序排列,所以通过中序遍历的方式来查找第k个最小元素,处理过程如下:

  • 首先判断特殊情况,如果二叉树为空,说明没有第K小的节点,直接返回空;

  • 中序遍历得到二叉搜索树的所有节点,是按顺序排列的;

  • 判断如果k大于二叉树的节点数,说明不存在第K小的节点,直接返回空;

  • 返回第K小的节点。

【每日寄语】 我们的希望是今天比昨天好,明天对于我们来说太遥远了,无所谓。人活着一生不能做萤火虫,永远要当一个钻井工人,永远在头上,为了前面的光芒努力,不是看后面怎么样。希望我们的过去再美好也是由于我们过去的努力,今天再努力就是为了明天的辉煌。



LeetCode-230-二叉搜索树中第K小的元素的评论 (共 条)

分享到微博请遵守国家法律