剑指offer:分行从上往下打印二叉树
生活随笔
收集整理的這篇文章主要介紹了
剑指offer:分行从上往下打印二叉树
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 分析
- 題目來(lái)源
分析
思路:
在原來(lái)bfs的基礎(chǔ)上,每一層結(jié)束時(shí)做一個(gè)標(biāo)記nullptr,每當(dāng)掃描到這個(gè)標(biāo)記時(shí),就將當(dāng)前隊(duì)列中元素存入vector中,并清空中間vector,進(jìn)入下一層。
這里加標(biāo)記需要注意的是,當(dāng)遍歷到最后一層時(shí),不用加標(biāo)記。遍歷完最后一層時(shí),queue為空,所以這句代碼這樣寫(xiě):if (q.size()) q.push(nullptr);// q不空再加標(biāo)簽nullptr
時(shí)間復(fù)雜度:O(n),每個(gè)元素遍歷一遍
ac代碼
題目來(lái)源
https://www.acwing.com/problem/content/42/
總結(jié)
以上是生活随笔為你收集整理的剑指offer:分行从上往下打印二叉树的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 剑指offer:从上往下打印二叉树
- 下一篇: wsl遇到问题The repositor