[二叉樹的層序遍歷]leetcode513:找樹左下角的值(medium)

題目:

513. 找樹左下角的值

題解:

  • 利用二叉樹的層序遍歷來尋找最後一層的最左邊節點的值,注意進隊列方式爲從右至左的,這樣保證最後的p爲最後一層的最左邊的節點。

代碼如下:

class Solution {
public:
    //層序遍歷:從右至左,這樣最後一個節點的值就是最左下角的值
    int findBottomLeftValue(TreeNode* root) {
        if(!root)return -1;
        queue<TreeNode*> q;
        q.push(root);
        TreeNode* p=nullptr;
        while(!q.empty()){
            p=q.front();q.pop();
            if(p->right)q.push(p->right);
            if(p->left)q.push(p->left);
        }
        //p爲最後一層最左邊的節點
        return p->val;
    }
};
發佈了509 篇原創文章 · 獲贊 173 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章