lintcode:Binary Tree Level Order Traversal
来源:互联网 发布:linux ssh暴力破解 编辑:程序博客网 时间:2024/06/08 07:45
Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).
Challenge 1: Using only 1 queue to implement it.
Challenge 2: Use DFS algorithm to do it.
1.队列
以前一直依次输出每层的节点标号,很简单。但现在需要把每层的标号存在一个二维向量中。
可以在每一层末尾插入一个NULL来区分层次!
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */class Solution { /** * @param root: The root of binary tree. * @return: Level order a list of lists of integer */public: vector<vector<int>> levelOrder(TreeNode *root) { // write your code here vector<vector<int> > res; if(root==NULL){ return res; } queue<TreeNode*> Q; Q.push(root); Q.push(NULL); vector<int> level; while(!Q.empty()){ TreeNode *node=Q.front(); Q.pop(); if(node){ level.push_back(node->val); if(node->left){ Q.push(node->left); } if(node->right){ Q.push(node->right); } }else{ res.push_back(level); level.clear(); if(!Q.empty()){ Q.push(NULL); } } } return res; }};
1 0
- lintcode:Binary Tree Level Order Traversal
- [Lintcode]Binary Tree Level Order Traversal
- [Lintcode]Binary Tree Zigzag Level Order Traversal
- 20150624 lintcode 总结 binary-tree-level-order-traversal **
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- Binary Tree Level Order Traversal
- golang日志中心取日志代码分享
- codeforce 437D 并查集+贪心
- Objective-C语法之NSArray和NSMutableArray
- POJ 2923 Relocation (状压DP+背包)
- 设计模式学习笔记
- lintcode:Binary Tree Level Order Traversal
- 新版XCode7.2.1的Instruments测试内存泄露
- 如何实现在Oracle中应用存储过程调用MatLab函数(3)
- 【优先队列】HDU4006The kth great number
- loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写
- 无法激活服务,因为它不支持 ASP.NET 兼容性
- Android开发随笔之自定义TitleBar
- Linux下iptables开放端口端示例
- 你只是追逐时髦的码农