LC102 Binary Tree Level Order Traversal
2016-03-25 18:26
417 查看
本质上是用BFS进行层序遍历,难点在于如何记录层的信息。
简单想法是可以用两个queue进行轮流操作。这里记录一种递归的做法。
View Code
简单想法是可以用两个queue进行轮流操作。这里记录一种递归的做法。
class Solution { public: vector<vector<int> > levelOrder(TreeNode *root) { vector<vector<int>> result; traverse(root, 1, result); return result; } void traverse(TreeNode *root, size_t level, vector<vector<int>> &result) { if (!root) return; if (level > result.size()) result.push_back(vector<int>()); result[level-1].push_back(root->val); traverse(root->left, level+1, result); traverse(root->right, level+1, result); } };
View Code
相关文章推荐
- 《将博客搬至CSDN》
- 移动端前端UI库—Frozen UI、WeUI、SUI Mobile
- mac 访问局域网服务器地址
- JQuery倒计时
- Android开源项目集合
- python None与Null
- 基于微信的域名交易系统(事件流程图)
- 关于Davlik解释器的一些思考
- 通过MapReduce进行电影推荐Movie Recommendations and More via MapReduce and Scalding
- git初体验(三)git分支
- bzoj 2843 极地旅行社(LCT)
- iOS UIWebView打电话
- 一看就懂的ReactJs入门教程(精华版)
- 實驗指導書
- 记录--关于Jquery uploadify 不能动态传值的问题(java)
- 对于jq应用到ajax记录
- SQLServer删除复制作业
- Handler原理笔记
- ggplot2快速教程Quick Introduction to ggplot2
- 使用Spark框架中文分词统计