我們可以利用隊列來層序遍歷整棵二叉樹。為了實現(xiàn)利用隊列遍歷二叉樹,我們在每次循環(huán)的開始是統(tǒng)計當前隊列中的個數(shù)而后進行循環(huán)。在每次的循環(huán)當中,我們將當前節(jié)點的左右子節(jié)點加入隊列中并在下一次循環(huán)中進行遍歷。其中,為了實現(xiàn)鋸齒形的層序遍歷,我們需要判斷當前深度是否為2的倍數(shù),若為2的倍數(shù)則說明當前層的遍歷需要進行逆序操作,我們將逆序操作后的數(shù)組加入最終結(jié)果當中。
class Solution {public:
vector>result;
queueq;
vector>zigzagLevelOrder(TreeNode *root) {int depth = 1;
if (!root) return {};
q.push(root);
while (!q.empty()) {int currentLevelSize = q.size();
vectortemp_res;
for (int i = 0; i< currentLevelSize; ++i) {TreeNode *cur = q.front();
q.pop();
temp_res.emplace_back(cur->val);
if (cur->left) q.push(cur->left);
if (cur->right) q.push(cur->right);
}
if (depth % 2 == 0) reverse(temp_res.begin(), temp_res.end());
++depth;
result.emplace_back(temp_res);
}
return result;
}
};
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
文章標題:LeetCode-103-二叉樹的鋸齒形層序遍歷-創(chuàng)新互聯(lián)
文章鏈接:http://aaarwkj.com/article8/pppop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、面包屑導(dǎo)航、搜索引擎優(yōu)化、建站公司、營銷型網(wǎng)站建設(shè)、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容