Binary Tree Zigzag Level Order Traversal 二叉树锯齿形层次遍历
2014-08-27 17:27
597 查看
题目:
点击打开链接
解答:
和链接方法一致,添加一个新元素是插入到头部还是添加到尾部的flag。
代码:
点击打开链接
解答:
和链接方法一致,添加一个新元素是插入到头部还是添加到尾部的flag。
代码:
class Solution { public: vector<vector<int> > zigzagLevelOrder(TreeNode *root) { vector<vector<int> > res; if (root == NULL) return res; queue<TreeNode *> que; que.push(root); vector<int> row; bool flag = true; while (!que.empty()) { row.clear(); flag = !flag; int size = que.size(); while (size) { TreeNode *node = que.front(); que.pop(); if (flag) row.insert(row.begin(), node->val); else row.push_back(node->val); if (node->left) que.push(node->left); if (node->right) que.push(node->right); --size; } res.push_back(row); } return res; } };
相关文章推荐
- lintcode二叉树的层次遍历
- 二叉树的层次遍历
- 二叉树的层次,中序非递归遍历,以递归前序的方式构造二叉树,将二叉树中的e更新为d,输出从根结点出发 到指定结点,依次经过的祖先(即路径),由前序和中序还原二叉树
- Lintcode 二叉树的层次遍历
- 69.二叉树的层次遍历
- 求树的深度(层次遍历)
- 优先级队列的实现 和 层次遍历建树
- Java二叉树按层次遍历,换行输出
- 层次创建二叉树及后序遍历
- 二叉树的非递归遍历以及层次遍历
- [二叉树专题]:广度优先:按层次遍历二叉树的非递归实现||使用队列实现层次遍历二叉树
- 利用队列实现二叉树的层次遍历
- PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
- c语言实现二叉树层次遍历(借助队列实现)
- 多叉树的层次遍历
- 数据结构和算法--二叉树的层次遍历
- Leetcode 107. 二叉树的层次遍历 II
- 数据结构-二叉树的前序、中序、后序、层次遍历
- 第十一周项目1-验证算法(1)-层次遍历算法的验证
- 第十一周项目1 -验证算法(1)-层次遍历算法的验证