剑指offer之把二叉树打印成多行
题目描述
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
解题思路
二叉树的层次序遍历即可,注意vector的边界条件
AC代码
class Solution {public:vector<vector<int>> Print (TreeNode* pRoot) {vector<vector<int>> res;if (pRoot == nullptr) {return res;}queue<Node> que;que.emplace (Node (pRoot, 0));while (!que.empty()) {auto t = que.front();que.pop();if (res.size() < t.depth + 1) { // 注意深度判别vector<int>vec;res.emplace_back (vec);}res[t.depth].push_back (t.ptr->val);if (t.ptr->left != nullptr) {que.emplace (Node (t.ptr->left, t.depth + 1));}if (t.ptr->right != nullptr) {que.emplace (Node (t.ptr->right, t.depth + 1));}}return res;}struct Node {TreeNode* ptr;int depth;Node (TreeNode* p, int dp):ptr (p), depth (dp) {}};
};
剑指offer之把二叉树打印成多行相关推荐
- 《剑指offer》把二叉树打印成多行
题目:从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. 解析:层次遍历二叉树,要点是要用队列存储节点信息.还有个问题,如何知道要换层?答案是用一个计数器current指示当前层的节点个 ...
- 剑指offer——面试题60:把二叉树打印成多行
剑指offer--面试题60:把二叉树打印成多行 Solution1: 20180911重做.经典题目.牢记做法! /* struct TreeNode {int val;struct TreeNod ...
- 《剑指offer》-- 二叉树的下一个结点、对称二叉树、按之字性顺序打印二叉树、把二叉树打印成多行
一.二叉树的下一个结点: 1.题目: 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回.注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. 2.解题思路: 分析二叉树 ...
- 剑指offer编程试题Java实现--60.把二叉树打印成多行
个人博客:小景哥哥 60.把二叉树打印成多行 题目描述 从上到下按层打印二叉树,同一层结点从左至右输出.每一层输出一行. import java.util.ArrayList; import java ...
- 【LeetCode】剑指 Offer 37. 序列化二叉树
[LeetCode]剑指 Offer 37. 序列化二叉树 文章目录 [LeetCode]剑指 Offer 37. 序列化二叉树 package offer;import java.util.Link ...
- 【LeetCode】剑指 Offer 67. 把字符串转换成整数
[LeetCode]剑指 Offer 67. 把字符串转换成整数 文章目录 [LeetCode]剑指 Offer 67. 把字符串转换成整数 package offer;public class So ...
- 【LeetCode】剑指 Offer 46. 把数字翻译成字符串
[LeetCode]剑指 Offer 46. 把数字翻译成字符串 文章目录 [LeetCode]剑指 Offer 46. 把数字翻译成字符串 package offer;public class So ...
- 【LeetCode】剑指 Offer 07. 重建二叉树
[LeetCode]剑指 Offer 07. 重建二叉树 文章目录 [LeetCode]剑指 Offer 07. 重建二叉树 package offer;import java.util.ArrayD ...
- 【LeetCode】剑指 Offer 68 - II. 二叉树的最近公共祖先
[LeetCode]剑指 Offer 68 - II. 二叉树的最近公共祖先 文章目录 [LeetCode]剑指 Offer 68 - II. 二叉树的最近公共祖先 一.DFS 一.DFS 祖先的定义 ...
最新文章
- 【连载】【黑金动力社区原创力作】《液晶驱动与GUI 基础教程》 --序言(一)
- 白话Elasticsearch26-深度探秘搜索技术之function_score自定义相关度分数算法
- 机器学习-常见的损失函数比较
- ubuntu: no module named _sqlite
- html语言中项目列表的嵌套,做HTML嵌套列表的正确方法?
- 求序列最长不下降子序列_最长不下降子序列nlogn算法详解
- 智慧城市_城市大脑:加速构建智慧城市
- 电子政务方向:We7.Cloud政府云门户
- div 显示滚动条的CSS代码
- linux 搭建日志服务器
- QT-C++ Nesting排料优化,广告,服装,木工排料(支持矩形、异形排版,提高优化效率)
- java发送qq邮件
- java格式化日期24小时_Java如何格式化24小时格式的时间?
- 强化学习(RL)QLearning算法详解
- 如何用手机实现高精度定位导航
- win7修复计算机卡了,Win7修复漏洞补丁后系统变卡的原因和解决方法
- python中统计函数_Python中的统计函数
- 喵的Unity游戏开发之路 - 攀爬
- 服务器电脑用哪个系统好,电脑系统哪个好用?电脑系统有几种版本
- 路径算法:遗传算法 (Genetic Algorithm, GA)
热门文章
- 对象测试_心理测试:你会选择跟对象去吃什么夜宵?测你治愈失恋的方法是什么...
- 李宏毅机器学习之Classification
- ~~约数个数(附模板题)
- #CSP 201709-1 打酱油
- 《深度学习笔记》——防止梯度消失的学习笔记
- Altium AD20大电流表层开窗,用特殊粘贴复制平面区域到其他层,阻焊开窗显示沉金LOGO
- 【算法设计】最大子矩阵问题
- 【GTK】信号量(signal)大全
- 【COGS2652】—天文密葬法(分数规划+长链剖分)
- 记一次海洋cms任意代码执行漏洞拿shell(url一句话)