70_leetcode_Binary Tree Zigzag level order traversal
来源:互联网 发布:淘宝代销怎么刷信誉 编辑:程序博客网 时间:2024/06/03 19:01
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]]
vector<vector<int> > zigzagLevelOrder(TreeNode *root) { vector<vector<int > > result; if(root == NULL) { return result; } vector<int> temp; bool flag = true; deque<TreeNode* > myDeque; myDeque.push_back(root); myDeque.push_back(NULL); while(!myDeque.empty()) { TreeNode* tempNode = myDeque.front(); myDeque.pop_front(); if(tempNode) { temp.push_back(tempNode->val); if(tempNode->left) { myDeque.push_back(tempNode->left); } if(tempNode->right) { myDeque.push_back(tempNode->right); } } else { if(!myDeque.empty()) { myDeque.push_back(NULL); } if(flag) { result.push_back(temp); flag = false; } else { int start = 0; int end = (int)temp.size() - 1; while(start < end) { swap(temp[start++], temp[end--]); } result.push_back(temp); flag = true; } temp.clear(); } } return result; }
0 0
- 70_leetcode_Binary Tree Zigzag level order traversal
- 69_leetcode_Binary Tree Level Order Traversal
- Middle-题目70: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: 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
- Binary Tree Zigzag Level Order Traversal
- 【leetcode】Binary Tree Zigzag Level Order Traversal
- [LeetCode]Binary Tree Zigzag Level Order Traversal
- Binary Tree Zigzag Level Order Traversal
- Binary Tree Zigzag Level Order Traversal
- [Leetcode]Binary Tree Zigzag Level Order Traversal
- [leetcode]Binary Tree Zigzag Level Order Traversal
- Cloudera Manager 离线安装详细介绍
- 【C语言复习(二十)】动态内存分配
- mysql,sqlserver,oracle主键自动增长设置
- RabbitMQ用户指南(RabbitMQ-C)
- UITableView的使用大全
- 70_leetcode_Binary Tree Zigzag level order traversal
- 关于fread函数读取到的数据和实际统计的和数据不一样
- 用ANT打包android——完整教程
- 如何给孩子喂丸药
- 按照RFC3984协议实现H264视频RTP打包(附源代码)
- 三个小时的攻关--成功拿下微软Dreamspark账号
- 我知道这几个。。
- 通过Android命令自动编译出build.xml文件
- C#操作XML配置文件