[刷题] 102 Binary Tree Level Order Traversal
要求
- 对二叉树进行层序遍历

实现
- 返回结果为双重向量,对应树的每层元素
- 队列的每个元素是一个pair对,存树节点和其所在的层信息
1 Definition for a binary tree node.
2 struct TreeNode {
3 int val;
4 TreeNode *left;
5 TreeNode *right;
6 TreeNode(int x) : val(x), left(NULL), right(NULL) {}
7 };
8
9 class Solution {
10 public:
11 vector<vector<int>> levelOrder(TreeNode* root) {
12 vector<vector<int>> res;
13 if( root == NULL )
14 return res;
15 queue< pair<TreeNode*, int> > q;
16 q.push( make_pair( root , 0 ) );
17 while( !q.empty() ){
18 TreeNode* node = q.front().first;
19 int level = q.front().second;
20 q.pop();
21
22 if( level == res.size() )
23 res.push_back( vector<int>() );
24 res[level].push_back( node->val );
25
26 if( node->left )
27 q.push( make_pair( node->left , level + 1 ));
28 if( node->right )
29 q.push( make_pair( node->right , level + 1 ));
30 }
31 return res;
32 }
33 };
相关
- 107 Binary Tree Level Order Traversal II
- 103 Binary Tree Zigzag Level Order Traversal
- 199 Binary Tree Right Side View
[刷题] 102 Binary Tree Level Order Traversal的更多相关文章
- [LeetCode] 102. Binary Tree Level Order Traversal 二叉树层序遍历
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- 102. Binary Tree Level Order Traversal 广度优先遍历
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- 【LeetCode】102. Binary Tree Level Order Traversal (2 solutions)
Binary Tree Level Order Traversal Given a binary tree, return the level order traversal of its nodes ...
- 102. Binary Tree Level Order Traversal
题目: Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to ri ...
- 【LeetCode】102. Binary Tree Level Order Traversal 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 DFS BFS 日期 题目描述 Given a bi ...
- leetcode 102. Binary Tree Level Order Traversal
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- [LeetCode]题解(python):102 Binary Tree Level Order Traversal
题目来源 https://leetcode.com/problems/binary-tree-level-order-traversal/ Given a binary tree, return th ...
- leetcode 102 Binary Tree Level Order Traversal ----- java
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- 【LeetCode】102 - Binary Tree Level Order Traversal
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
随机推荐
- Topshelf一个用于使用.NET构建Windows服务框架
1 Topshelf是什么? Topshelf是用于托管使用.NET框架编写的Windows服务的框架.服务的创建得到简化,从而使开发人员可以创建一个简单的控制台应用程序,可以使用Topshelf将其 ...
- Java开发工程师面试-基础
JDK.JRE.JVM有什么区别? JDK:Java Development Kit 针对Java程序员的产品 JRE:Java Runtime Environment是运行Java的环境集合 JVM ...
- 第3 章 : Kubernetes 核心概念
Kubernetes 核心概念 本文整理自 CNCF 和阿里巴巴联合举办的云原生技术公开课的课时 3:Kubernetes 核心概念.本次课程中,阿里巴巴资深技术专家.CNCF 9个 TCO 之一 李 ...
- 一键生成dotnet5项目解决方案
> 作为一名从2002年.Net 1.0一路走来的老码农,也持续跟进了dotnet core 1.0~3.1的变革,并不离不弃的玩起了dotnet 5. 每次接到新项目,都要从头搭建项目解决方案 ...
- Fastbin attack 总结
Fastbin attack 本文参考了ctf-wiki 和glibc 要了解fastbin attack,我们先要了解fastbin的机制.由于libc2.26后加入了tcache机制,我们这里就只 ...
- 华为分析+App Linking:一站式解决拉新、留存、促活难
移动互联网时代,用户注意力稀缺,"如何让用户一键直达APP特定页面"越来越受到产品和运营同学的关注. 比如在各个渠道投放了APP安装广告,希望新用户下载APP首次打开时直接进入活动 ...
- Django中 render() 函数的使用方法
render() 函数 在讲 render() 函数之前,我们在 Django 项目 index 文件夹的 urls.py 和 views.py 中编写如下功能代码:(不难,望读者细心阅之) # in ...
- Go-06-数据类型、常量、运算符
数据类型转换 Go语言采用数据类型前置加括号的方式进行类型转换,格式如:T(表达式).T表示要转换的类型:表达式包括变量.数值.函数返回值等. var a int =100 b := float(a) ...
- 一次死锁导致CPU异常飘高的整个故障排查过程
目录 一.问题详情 top 命令截图 联系腾讯云排查 检查系统日志发现异常 二. 问题解析 三.问题原因 最终结论 四.扩展 进程的几种状态 马后炮 如何快速清理僵尸进程(Z) 内核参数相关 如何查看 ...
- 在 Windows 用上 Linux GUI——GitHub 热点速览 v.21.17
本文首发于「HelloGitHub」微信公众号,搜索「HelloGitHub」点击关注解锁更多宝藏! 作者:HelloGitHub-小鱼干 超喜欢本周的 GitHub 热点,如果你是个 Windows ...