leetcode199. 二叉树的右视图(层序遍历03)
一:题目
二:上码
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {public:vector<int> rightSideView(TreeNode* root) {/**思路:1.层序遍历中我们用的是队列2.我们先将头结点入队(前提是头结点不空)3.然后我们定义一个while循环,只要队列不空,每次就将队列中的元素依次出队,记录出队的元素然后再将其每个元素的左右节点入队4.回归本题,我们希望看到的是从右边看到的元素,那么就是每层的最后一个元素*/queue<TreeNode*>q;vector<int>ans;if(root != NULL) {q.push(root);}while(!q.empty()) {int size = q.size();for(int i = 0; i < size; i++) {TreeNode* nums = q.front();q.pop();if(i == (size-1)) ans.push_back(nums->val);if(nums->left) q.push(nums->left);if(nums->right) q.push(nums->right);}}return ans;}
};
如有疑问请留言 一个人可以走的很快 但团结协作才可以走的更远
leetcode199. 二叉树的右视图(层序遍历03)相关推荐
- Leetcode-199二叉树的右视图(二叉树左视图)
题目描述 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值. 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 输 ...
- leetcode199. 二叉树的右视图(bfs)
给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值.示例:输入: [1,2,3,null,5,null,4] 输出: [1, 3, 4] 解释:1 <--- ...
- 2022-4-30 Leetcode199.二叉树的右视图
其实不用这么麻烦的,每层只放最后一个就行了. class Solution {public:vector<int> rightSideView(TreeNode* root) {queue ...
- [Leedcode][JAVA][第199题][二叉树的右视图][BFS][DFS][前中后序遍历]
[问题描述]199.二叉树的右视图 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值.示例:输入: [1,2,3,null,5,null,4] 输出: [1, ...
- 常考数据结构与算法:输出二叉树的右视图
题目描述 请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图 上图树的右视图为:{1,4,3,7} 做此题之前可以先做下面3道题: 1. 常考数据结构与算法:求二叉树的层序遍历 2.常 ...
- 牛客题霸 [输出二叉树的右视图] C++题解/答案
牛客题霸 [输出二叉树的右视图] C++题解/答案 题目描述 请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图 题解: 分两个过程: 先用前序遍历+中序遍历恢复二叉树,这个应该都会. ...
- 二叉树(二):判断是不是二叉搜索树、判断是不是完全二叉树、判断是不是平衡二叉树、二叉搜索树的最近公共祖先、在二叉搜索树中找到两个节点的最近公共祖先、序列化二叉树、重建二叉树、输出二叉树的右视图
目录 一.判断是不是二叉搜索树 1.1 题目 1.2 题解 二.判断是不是完全二叉树 2.1 题目 2.2 题解 三.判断是不是平衡二叉树 3.1 题目 3.2 题解 四.二叉搜索树的最近公共祖先 4 ...
- LeetCode-笔记-199. 二叉树的右视图——BFS广度优先搜索
LeetCode-笔记-199. 二叉树的右视图 199. 二叉树的右视图 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值. 示例: 输入: [1,2,3,n ...
- 常考数据结构与算法:二叉树的之字形层序遍历
题目描述 给定一个二叉树,返回该二叉树的之字形层序遍历,(第一层从左向右,下一层从右向左,一直这样交替) 例如: 给定的二叉树是{3,9,20,#,#,15,7}, 该二叉树之字形层序遍历的结果是 [ ...
最新文章
- Dos一键清理系统垃圾教程
- 在Eclipse中给JRE-Library添加本地Javadoc
- Grafana plugins zabbix 安装
- Java接口和Java抽象类有什么不同
- 解决: -bash: docker-compose: command not found、linux 安装 docker-compose
- 逼自己玩命学了3个多月,整理出了这份549个分支的技术脑图,分享给你
- mybatis_05动态SQL_if和where
- 5G时代到来,那我们现在用的4G手机怎么办?
- JavaScript的NaN-唯一 一个自己不等于自己的对象!!
- 黑马vue实战项目-(六)商品列表组件的开发
- SCI论文降重技巧盘点 - 易智编译EaseEditing
- 单片机毕业设计 stm32智能温控风扇
- 手机端APP抓包环境的探索(安卓模拟器)
- Vim配置#pathogen插件管理工具
- 21 Excel动态图表实现原理
- 什么是DAPP?DAPP和APP相比有什么区别?
- MyBatis源码的学习(9)---映射器mappers的的XML解析
- Visual Studio 2019 许可证过期解决方法
- 百度云虚拟机访问项目404
- 3D音频再现理论研究(一)---3D音频技术历史介绍(转)
热门文章
- python3怎样交换数字顺序_python中怎么交换列的顺序
- 【ArcGIS风暴】ArcGIS10.6创建LAS数据集的两种方法并加载点云数据
- 【学生选课系统经典】C#与SQLSERVER连接:ASP.NET网站(服务器端,IIS发布)
- Java之HashMap、Hashtable、LinkedHashMap、TreeMap、ConcurrentHashMap简单的区别
- C和指针之数组和函数部分总结
- C和C++里面常见错误和异常出现怎么解决总结(不断更新)
- [python opencv 计算机视觉零基础到实战] 十、图片效果毛玻璃
- clob字段怎么导出_Oracle 11g及12c+版本下为啥有些表不能exp导出?
- 八类网线和七类网线的区别_什么是七类网线?七类网线水晶头如何制作?
- access的ole对象换成mysql_ACCESS的Ole对象读取写入