廣度優(yōu)先遍歷使用隊(duì)列
注意隊(duì)列的插入悬槽,使用鏈表實(shí)現(xiàn)的時(shí)候,插入要查到最后一個(gè)節(jié)點(diǎn)护赊,而不是頭節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)。
其實(shí)棧用鏈表實(shí)現(xiàn)也很好砾跃。插入刪除的效率都很好
隊(duì)列用鏈表實(shí)現(xiàn)骏啰,插入效率低一下
102.?Binary Tree Level Order Traversal
Given a binary tree, return the?level order?traversal of its nodes' values. (ie, from left to right, level by level).
這道題的主要難點(diǎn)在于如何記錄樹的深度,
應(yīng)該是在構(gòu)建每一層的時(shí)候抽高,記錄當(dāng)層的寬度器一,而當(dāng)層的由上一層的寬度決定,第一層寬度已知厨内。遍歷完一層祈秕,則應(yīng)該深度+1。為了深度可以直接相加雏胃,注意儲(chǔ)存節(jié)點(diǎn)前先判斷是否為空
199.?Binary Tree Right Side View
Given a binary tree, imagine yourself standing on the?right?side of it, return the values of the nodes you can see ordered from top to bottom.
常出錯(cuò)的地方:
1 賦值和等號(hào)
2 變量名是否正確
3 返回值是否正確
4 使用未定義的變量和未使用定義了的變量+1
5 左括號(hào)寫完