亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

leetCode如何找出二叉搜索樹的第k大節點

發布時間:2021-12-15 14:58:08 來源:億速云 閱讀:209 作者:小新 欄目:大數據

這篇文章主要介紹leetCode如何找出二叉搜索樹的第k大節點,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

 

一,二叉搜索樹的第k大節點

 

1,問題簡述

給定一棵二叉搜索樹,請找出其中第k大的節點。

 

2,示例描述

示例 1:

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

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

限制:

1 ≤ k ≤ 二叉搜索樹元素個數

 
   

3,題解思路

二叉搜索樹的中序遍歷就是元素遞增的,根據中序遍歷得到的數據即可解決。

 

4,題解程序


import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class KthLargestTest3 {
   public static void main(String[] args) {
       TreeNode t1=new TreeNode(3);
       TreeNode t2=new TreeNode(1);
       TreeNode t3=new TreeNode(4);
       TreeNode t4=new TreeNode(2);
       t1.left=t2;
       t1.right=t3;
       t2.right=t4;
       int k=1;
       int kthLargest = kthLargest(t1, k);
       System.out.println("kthLargest = " + kthLargest);

   }

   public static  int kthLargest(TreeNode root, int k) {
       if (root == null) {
           return 0;
       }
       List<Integer> list = new ArrayList<>();
       dfs(root, list);
       list.sort(Comparator.reverseOrder());
     
       return list.get(k - 1);
   }

   private static  void  dfs(TreeNode root, List<Integer> list) {
       if (root == null) {
           return;
       }
       if (root.left != null) {
           dfs(root.left, list);
       }
       list.add(root.val);
       if (root.right != null) {
           dfs(root.right, list);
       }
   }
}

     

以上是“leetCode如何找出二叉搜索樹的第k大節點”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

娄底市| 云安县| 卓尼县| 荃湾区| 双峰县| 邯郸县| 隆回县| 新闻| 喀喇沁旗| 沙洋县| 永靖县| 治多县| 科技| 天津市| 抚松县| 沂南县| 大英县| 泸定县| 浦北县| 西峡县| 呼玛县| 佛教| 伊宁市| 元江| 乐昌市| 上犹县| 鹿泉市| 马边| 天门市| 大洼县| 海原县| 桂东县| 闻喜县| 县级市| 海盐县| 礼泉县| 盘锦市| 赤壁市| 剑阁县| 兴仁县| 临城县|