中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

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

绥德县| 化州市| 望江县| 枝江市| 濮阳市| 泰顺县| 时尚| 色达县| 宜章县| 金沙县| 抚顺县| 保靖县| 大理市| 嫩江县| 化州市| 大埔县| 陕西省| 青龙| 安国市| 鄂托克前旗| 泉州市| 天等县| 开封县| 项城市| 铁岭市| 肃宁县| 中卫市| 保康县| 宁夏| 西乌珠穆沁旗| 宜黄县| 秦皇岛市| 若尔盖县| 荆州市| 葵青区| 南充市| 芦溪县| 凌云县| 视频| 呼伦贝尔市| 汶川县|