LeetCode Binary Tree Zigzag Level Order Traversal
2014-03-23 22:27
267 查看
题目:
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).
For example:
Given binary tree
return its zigzag level order traversal as:
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).
For example:
Given binary tree
{3,9,20,#,#,15,7},
3 / \ 9 20 / \ 15 7
return its zigzag level order traversal as:
[ [3], [20,9], [15,7] ]
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: vector<vector<int> > zigzagLevelOrder(TreeNode *root) { vector<vector<int>> ans; if(root == NULL) return ans; deque<int> level; bool flag = 1; vector<TreeNode*> cur; cur.push_back(root); vector<TreeNode*> next; while(!cur.empty()) { level.clear(); next.clear(); int bg = 0, ed = cur.size(); while(bg != ed) { TreeNode *tmp = cur[bg]; if(flag) level.push_back(tmp->val); else level.push_front(tmp->val); if(tmp->left != NULL) next.push_back(tmp->left); if(tmp->right != NULL) next.push_back(tmp->right); bg++; } flag = 1-flag; ans.push_back(vector<int>(level.begin(), level.end())); cur = next; } return ans; } };代码参考:/article/8613122.html
相关文章推荐
- Leetcode: Binary Tree Zigzag Level Order Traversal 理解分析
- LeetCode 103 Binary Tree Zigzag Level Order Traversal
- Leetcode Binary Tree Zigzag Level Order Traversal
- [LeetCode]Binary Tree Zigzag Level Order Traversal
- [LeetCode]Binary Tree Zigzag Level Order Traversal
- LeetCode: Binary Tree Zigzag Level Order Traversal
- Leetcode 103 Binary Tree Zigzag Level Order Traversal
- [LeetCode]Binary Tree Zigzag Level Order Traversal
- LeetCode:Binary Tree Zigzag Level Order Traversal
- 【leetcode】Binary Tree Zigzag Level Order Traversal
- leetcode_103_Binary Tree Zigzag Level Order Traversal
- Leetcode: Binary Tree Zigzag Level Order Traversal
- LeetCode - Binary Tree Zigzag Level Order Traversal
- Leetcode: Binary Tree Zigzag Level Order Traversal
- LeetCode刷题笔录 Binary Tree Zigzag Level Order Traversal
- leetcode[103]Binary Tree Zigzag Level Order Traversal
- LeetCode Binary Tree Zigzag Level Order Traversal
- LeetCode--binary-tree-zigzag-level-order-traversal
- LeetCode 103 Binary Tree Zigzag Level Order Traversal
- leetcode--Binary Tree Zigzag Level Order Traversal