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

Posted xiyangchen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了230. 二叉搜索树中第K小的元素相关的知识,希望对你有一定的参考价值。

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

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

示例 1:

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

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst

 1 public class KthSmallest 
 2     static class TreeNode 
 3         int val;
 4         TreeNode left;
 5         TreeNode right;
 6         TreeNode(int x) 
 7             val = x;
 8         
 9     
10     private int count = 0;
11     private int val;
12     public int kthSmallest(TreeNode root, int k) 
13         inOrder(root, k);
14         return val;
15         
16     public void inOrder(TreeNode node, int k) 
17         if(node == null) 
18             return;
19         
20         inOrder(node.left, k);
21         count++;
22         if(count == k) 
23             val = node.val;
24             return;
25         
26         inOrder(node.right, k);
27     
28 

 

以上是关于230. 二叉搜索树中第K小的元素的主要内容,如果未能解决你的问题,请参考以下文章

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

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

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

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

LeetCode 230. 二叉搜索树中第K小的元素 (平衡树)

LeetCode——230. 二叉搜索树中第K小的元素(Java)