Leetcode Binary Tree Zigzag Level Order Traversal
来源:互联网 发布:oracle数据库查询语句 编辑:程序博客网 时间:2024/06/07 21:55
题意:之字形遍历树。
思路:BFS,注意奇数层和偶数层不同的遍历方向。
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<vector<int> > re; vector<vector<int>> zigzagLevelOrder(TreeNode* root) { vector<TreeNode*> t; t.push_back(root); bfs(t, 0); return re; } void bfs(vector<TreeNode*> p, int level) { if(p.size() == 0) return; vector<TreeNode*> temp; vector<int> tempre; for(int i = 0; i < p.size(); ++ i) { if(p[i] == NULL) continue; temp.push_back(p[i]->left); temp.push_back(p[i]->right); } if(level % 2 == 0) { for(int i = 0; i < p.size(); ++ i) { if(p[i] == NULL) continue; tempre.push_back(p[i]->val); } } else { for(int i = p.size() - 1; i >=0; i --) { if(p[i] == NULL) continue; tempre.push_back(p[i]->val); } } if(tempre.size() == 0) return; re.push_back(tempre); bfs(temp, level + 1); return; }};
0 0
- 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: 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]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] 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
- 为什么Redis内存不宜过大
- AdaBoost中利用Haar特征进行人脸识别算法分析与总结1——Haar特征与积分图
- Shell编程基础
- URL中的#号
- linux下使用netstat和管道来获取服务端建立的ip连接数
- Leetcode Binary Tree Zigzag Level Order Traversal
- POJ-2325解题报告
- Leetcode Implement Queue using Stacks
- 【LeetCode】 401. Binary Watch
- ARM汇编学习的总结
- ARM汇编必知必会
- ubuntu下解压缩文件
- 【LeetCode】 404. Sum of Left Leaves
- 得到jz2440的uboot文件,并生成烧写文件