首页 > 其他 > 详细

二叉树——199. 二叉树的右视图

时间:2021-04-10 16:20:45      阅读:14      评论:0      收藏:0      [点我收藏+]

二叉树——199. 二叉树的右视图

题目:

技术分享图片

思路:

层序遍历(BFS),记录下每层最后一个结点。

代码:

class Solution {
public:
    vector<int> rightSideView(TreeNode* root) {
        queue<TreeNode*> que;
        if(root != NULL) que.push(root);
        vector<int> result;
        while(!que.empty()){
            int size = que.size();
            for(int i=0; i < size; i++){
                TreeNode* node = que.front();
                que.pop();
                // 将每一层的最后元素放入result数组中
                if(i == (size -1)) result.push_back(node->val);
                if(node->left) que.push(node->left);
                if(node->right) que.push(node->right);
            }
        }
        return result;
    }
};

Rank:

技术分享图片

Tips:

BFS和DFS的模板还是要总结一下。

二叉树——199. 二叉树的右视图

原文:https://www.cnblogs.com/lzyrookie/p/14640430.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!