只做嵌入式 2021-11-11 23:20 采纳率: 42.9%
浏览 9
已结题

按之字形顺序打印二叉树

给定一个二叉树,返回该二叉树的之字形层序遍历,(第一层从左向右,下一层从右向左,一直这样交替)

img

  • 写回答

1条回答 默认 最新

  • 从善若水 5G/6G通信领域优质创作者 2021-11-11 23:23
    关注
    
    class Solution {
    public:
        vector<vector<int> > Print(TreeNode* pRoot) {
            vector<vector<int>> res;
            if(pRoot == NULL)
                return res;
            queue<TreeNode*> que;
            que.push(pRoot);
            bool even = false;
            while(!que.empty()){
                vector<int> vec;
                const int size = que.size();
                for(int i=0; i<size; ++i){
                    TreeNode* tmp = que.front();
                    que.pop();
                    vec.push_back(tmp->val);
                     if(tmp->left != NULL)
                        que.push(tmp->left);
                    if(tmp->right != NULL)
                        que.push(tmp->right);
                }
                if(even)
                    std::reverse(vec.begin(), vec.end());
                res.push_back(vec);
                even = !even;
            }
            return res;
        }
        
    };
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月20日
  • 已采纳回答 11月12日
  • 创建了问题 11月11日

悬赏问题

  • ¥15 MATLAB代码补全插值
  • ¥15 Typegoose 中如何使用 arrayFilters 筛选并更新深度嵌套的子文档数组信息
  • ¥15 前后端分离的学习疑问?
  • ¥15 stata实证代码答疑
  • ¥50 husky+jaco2实现在gazebo与rviz中联合仿真
  • ¥15 dpabi预处理报错:Error using y_ExtractROISignal (line 251)
  • ¥15 在虚拟机中配置flume,无法将slave1节点的文件采集到master节点中
  • ¥15 husky+kinova jaco2 仿真
  • ¥15 zigbee终端设备入网失败
  • ¥15 金融监管系统怎么对7+4机构进行监管的