C++/代码:

从上往下打印二叉树

http://www.nowcoder.com/questionTerminal/7fe2212963db4790b57431d9ed259701

C++/代码:

class Solution {
public:
    vector<int> PrintFromTopToBottom(TreeNode* root) {
        vector<int> res; //定一个一维数组,存放各个结点
        if(!root) return res; //如果为空树,则返回res;
        queue<TreeNode*> q; //定一个TreeNode*队列
        q.push(root); //插入root根结点
        while (q.size()) {
            auto t = q.front(); //将结点赋值给t
            q.pop(); //弹出结点
            res.push_back(t->val);  //将t值插入res尾部
            if (t->left) q.push(t->left); //先进先出,如果有左结点,插入
            if (t->right) q.push(t->right); //如果有右结点,插入
        }
        return res;
    }
};
全部评论
用这个auto有什么用呀
点赞 回复 分享
发布于 2021-09-26 15:51
原来这个广度遍历这么简单吗?
点赞 回复 分享
发布于 2021-09-26 16:03

相关推荐

真得找个班上:真是白嫖学生劳动力脸都不要了
点赞 评论 收藏
分享
评论
10
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务