国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

★102. 二叉樹的層序遍歷

這篇具有很好參考價(jià)值的文章主要介紹了★102. 二叉樹的層序遍歷。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

102. 二叉樹的層序遍歷

很巧妙的,又學(xué)習(xí)了一種層次遍歷的方法,就是說根據(jù)當(dāng)前的隊(duì)列的長度去遍歷,遍歷的當(dāng)前隊(duì)列的長度就是該層次的節(jié)點(diǎn)個(gè)數(shù)。
★102. 二叉樹的層序遍歷,力扣Hot100,算法,數(shù)據(jù)結(jié)構(gòu),leetcode文章來源地址http://www.zghlxwxcb.cn/news/detail-754194.html

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public List<List<Integer>> levelOrder(TreeNode root) {
        List<List<Integer>> levelOrderList = new ArrayList<>();
        if(root == null) return levelOrderList;
        Queue<TreeNode> queue = new LinkedList<>();    //用于做隊(duì)列,遍歷整棵樹
        List<Integer> list = new ArrayList<>();     // 用于存儲(chǔ)用隊(duì)列遍歷樹的val
        queue.add(root);
        while(queue.size()!=0) {
        //    System.out.println("當(dāng)前隊(duì)列的長度" + queue.size());
            int l = queue.size();
            for(int i=0;i<l; i++) {
                TreeNode front = queue.poll();   //LinkedList的poll方法可以取出第一個(gè)元素的值。
                list.add(front.val);
                if(front.left!=null) queue.add(front.left);
                if(front.right!=null) queue.add(front.right);
            }
/*             System.out.print("當(dāng)前放入的元素為");
            Iterator iterator = list.iterator();
            while(iterator.hasNext()){
                System.out.print(iterator.next() + " ");
            }
            System.out.println(); */
            levelOrderList.add(list);
            list = new ArrayList<Integer>();
        }
        return levelOrderList;
    }
}

到了這里,關(guān)于★102. 二叉樹的層序遍歷的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【LeetCode熱題100】--102.二叉樹的層序遍歷

    【LeetCode熱題100】--102.二叉樹的層序遍歷

    廣度優(yōu)先搜索: 我們可以想到最樸素的方法是用一個(gè)二元組 (node, level) 來表示狀態(tài),它表示某個(gè)節(jié)點(diǎn)和它所在的層數(shù),每個(gè)新進(jìn)隊(duì)列的節(jié)點(diǎn)的 level 值都是父親節(jié)點(diǎn)的 level 值加一。最后根據(jù)每個(gè)點(diǎn)的 level 對(duì)點(diǎn)進(jìn)行分類,分類的時(shí)候我們可以利用哈希表,維護(hù)一個(gè)以 level 為鍵

    2024年02月07日
    瀏覽(41)
  • 每日一題:LeetCode-102.二叉樹的層序遍歷

    每日一題:LeetCode-102.二叉樹的層序遍歷

    前言: ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ????如果說代碼有靈魂,那么它的靈魂一定是???? 算法 ????,因此,想要寫出??優(yōu)美的程序??,核心算法是必不可少的,少年,你渴望力量嗎????,想掌握程序的靈魂嗎???那么就必須踏上這樣一條漫長

    2024年02月05日
    瀏覽(23)
  • 每日一練:LeeCode-102、二又樹的層序遍歷【二叉樹】

    每日一練:LeeCode-102、二又樹的層序遍歷【二叉樹】

    本文是力扣LeeCode-102、二又樹的層序遍歷 學(xué)習(xí)與理解過程,本文僅做學(xué)習(xí)之用,對(duì)本題感興趣的小伙伴可以出門左拐LeeCode。 給你二叉樹的根節(jié)點(diǎn) root ,返回其節(jié)點(diǎn)值的 層序遍歷 。 ( 即逐層地,從左到右訪問所有節(jié)點(diǎn) )。 示例 1: 輸入:root = [3,9,20,null,null,15,7] 輸出:[[3

    2024年01月21日
    瀏覽(22)
  • 【數(shù)據(jù)結(jié)構(gòu)與算法】力扣:二叉樹的層序遍歷

    【數(shù)據(jù)結(jié)構(gòu)與算法】力扣:二叉樹的層序遍歷

    給你二叉樹的根節(jié)點(diǎn) root ,返回其節(jié)點(diǎn)值的 層序遍歷 。 (即逐層地,從左到右訪問所有節(jié)點(diǎn))。 示例1: 輸入:root = [3,9,20,null,null,15,7] 輸出:[[3],[9,20],[15,7]] 示例 2: 輸入:root = [1] 輸出:[[1]] 示例 3: 輸入:root = [] 輸出:[] 來源:力扣(LeetCode) 鏈接:https://leetcode.cn/p

    2024年02月13日
    瀏覽(29)
  • 代碼隨想錄Day12 二叉樹 LeetCode T102二叉樹的層序遍歷 T226 翻轉(zhuǎn)二叉樹 T101 對(duì)稱二叉樹

    代碼隨想錄Day12 二叉樹 LeetCode T102二叉樹的層序遍歷 T226 翻轉(zhuǎn)二叉樹 T101 對(duì)稱二叉樹

    本文思路和詳細(xì)講解來自于:代碼隨想錄 (programmercarl.com) 題目鏈接:102. 二叉樹的層序遍歷 - 力扣(LeetCode) 本題使用隊(duì)列輔助完成,講解主要函數(shù)CheckOrder:首先判斷root是否為空,是就直接返回,然后創(chuàng)建隊(duì)列,向里加入root元素,計(jì)算隊(duì)列的長度,也就是每一層的元素個(gè)數(shù),while循環(huán),si

    2024年02月06日
    瀏覽(19)
  • 41 二叉樹的層序遍歷

    41 二叉樹的層序遍歷

    給你二叉樹的根節(jié)點(diǎn) root ,返回其節(jié)點(diǎn)值的 層序遍歷 。 (即逐層地,從左到右訪問所有節(jié)點(diǎn))。 提示: 樹中節(jié)點(diǎn)數(shù)目在范圍 [0, 2000] 內(nèi) -1000 = Node.val = 1000

    2024年02月07日
    瀏覽(23)
  • 二叉樹題目:二叉樹的層序遍歷 II

    二叉樹題目:二叉樹的層序遍歷 II

    標(biāo)題:二叉樹的層序遍歷 II 出處:107. 二叉樹的層序遍歷 II 4 級(jí) 要求 給你二叉樹的根結(jié)點(diǎn) root texttt{root} root ,返回其結(jié)點(diǎn)值自底向上的層序遍歷(即從左到右,按從葉結(jié)點(diǎn)所在層到根結(jié)點(diǎn)所在層逐層遍歷)。 示例 示例 1: 輸入: root ? = ? [3,9,20,null,null,15,7] texttt{root = [3

    2024年02月11日
    瀏覽(23)
  • 算法進(jìn)階——求二叉樹的層序遍歷

    算法進(jìn)階——求二叉樹的層序遍歷

    題目 給定一個(gè)二叉樹,返回該二叉樹層序遍歷的結(jié)果,(從左到右,一層一層地遍歷)。 例如: 給定的二叉樹是{3,9,20,#,#,15,7}, 該二叉樹層序遍歷的結(jié)果是 [ [3], [9,20], [15,7] ] 提示: 0 = 二叉樹的結(jié)點(diǎn)數(shù) = 1500 示例1 示例2 思路 利用輔助隊(duì)列,通過bfs(廣度優(yōu)先)算法遍歷二叉樹

    2024年01月24日
    瀏覽(31)
  • day-20 二叉樹的層序遍歷

    day-20 二叉樹的層序遍歷

    思路:利用隊(duì)列進(jìn)行廣度優(yōu)先遍歷即可 注意點(diǎn):ArrayList執(zhí)行remove之后,索引i會(huì)立即重排,注意可能越界 code:

    2024年03月19日
    瀏覽(23)
  • 【數(shù)據(jù)結(jié)構(gòu)】二叉樹的層序遍歷

    【數(shù)據(jù)結(jié)構(gòu)】二叉樹的層序遍歷

    當(dāng)我們面對(duì)一個(gè)樹結(jié)構(gòu)時(shí),常常需要對(duì)其進(jìn)行遍歷以獲取其中的節(jié)點(diǎn)信息。其中一種常用的遍歷方式是層序遍歷,也稱為廣度優(yōu)先搜索(BFS)。本篇博客將詳細(xì)介紹層序遍歷的原理和實(shí)現(xiàn)方法。 層序遍歷以樹的根節(jié)點(diǎn)開始,按照從上到下、從左到右的順序逐層遍歷樹中的節(jié)點(diǎn)

    2024年02月03日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包