LeetCode--Binary Tree Zigzag Level Order Traversal
2015-01-14 11:10
381 查看
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:
confused what
read more on how binary tree is serialized on OJ.
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] ]
confused what
"{1,#,2,3}"means? >
read more on how binary tree is serialized on OJ.
/** * 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>> res; if(root == NULL) return res; stack<TreeNode*> use; queue<TreeNode*> save; save.push(root); bool flag = false; while(!save.empty()) { vector<int> t; while(!save.empty()) { use.push(save.front()); save.pop(); } while(!use.empty()) { TreeNode* temp = use.top(); use.pop(); t.push_back(temp->val); if(flag == true) { if(temp->right != NULL) save.push(temp->right); if(temp->left != NULL) save.push(temp->left); } else { if(temp->left != NULL) save.push(temp->left); if(temp->right != NULL) save.push(temp->right); } } flag = (!flag); res.push_back(t); } return res; } };
相关文章推荐
- LeetCode--Binary Tree Zigzag Level Order Traversal
- leetcode[103]Binary Tree Zigzag Level Order Traversal
- C++详解Leetcode:103. Binary Tree Zigzag Level Order Traversal
- [leetcode] Binary Tree Zigzag Level Order Traversal
- LeetCode之Binary Tree Zigzag Level Order Traversal
- Java for LeetCode 103 Binary Tree Zigzag Level Order Traversal
- leetcode 103: Binary Tree Zigzag Level Order Traversal
- leetcode_c++:栈:Binary Tree Zigzag Level Order Traversal(103)
- [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 106: Binary Tree Zigzag Level Order Traversal
- 【Leetcode】【python】Binary Tree Zigzag Level Order Traversal
- 【LeetCode】 Binary Tree Zigzag Level Order Traversal 解题报告
- 70_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