一:题目

二:上码

/*** 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)相关推荐

  1. Leetcode-199二叉树的右视图(二叉树左视图)

    题目描述 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值. 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 输 ...

  2. leetcode199. 二叉树的右视图(bfs)

    给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值.示例:输入: [1,2,3,null,5,null,4] 输出: [1, 3, 4] 解释:1 <--- ...

  3. 2022-4-30 Leetcode199.二叉树的右视图

    其实不用这么麻烦的,每层只放最后一个就行了. class Solution {public:vector<int> rightSideView(TreeNode* root) {queue ...

  4. [Leedcode][JAVA][第199题][二叉树的右视图][BFS][DFS][前中后序遍历]

    [问题描述]199.二叉树的右视图 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值.示例:输入: [1,2,3,null,5,null,4] 输出: [1, ...

  5. 常考数据结构与算法:输出二叉树的右视图

    题目描述 请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图 上图树的右视图为:{1,4,3,7} 做此题之前可以先做下面3道题: 1. 常考数据结构与算法:求二叉树的层序遍历 2.常 ...

  6. 牛客题霸 [输出二叉树的右视图] C++题解/答案

    牛客题霸 [输出二叉树的右视图] C++题解/答案 题目描述 请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图 题解: 分两个过程: 先用前序遍历+中序遍历恢复二叉树,这个应该都会. ...

  7. 二叉树(二):判断是不是二叉搜索树、判断是不是完全二叉树、判断是不是平衡二叉树、二叉搜索树的最近公共祖先、在二叉搜索树中找到两个节点的最近公共祖先、序列化二叉树、重建二叉树、输出二叉树的右视图

    目录 一.判断是不是二叉搜索树 1.1 题目 1.2 题解 二.判断是不是完全二叉树 2.1 题目 2.2 题解 三.判断是不是平衡二叉树 3.1 题目 3.2 题解 四.二叉搜索树的最近公共祖先 4 ...

  8. LeetCode-笔记-199. 二叉树的右视图——BFS广度优先搜索

    LeetCode-笔记-199. 二叉树的右视图 199. 二叉树的右视图 给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值. 示例: 输入: [1,2,3,n ...

  9. 常考数据结构与算法:二叉树的之字形层序遍历

    题目描述 给定一个二叉树,返回该二叉树的之字形层序遍历,(第一层从左向右,下一层从右向左,一直这样交替) 例如: 给定的二叉树是{3,9,20,#,#,15,7}, 该二叉树之字形层序遍历的结果是 [ ...

最新文章

  1. Dos一键清理系统垃圾教程
  2. 在Eclipse中给JRE-Library添加本地Javadoc
  3. Grafana plugins zabbix 安装
  4. Java接口和Java抽象类有什么不同
  5. 解决: -bash: docker-compose: command not found、linux 安装 docker-compose
  6. 逼自己玩命学了3个多月,整理出了这份549个分支的技术脑图,分享给你
  7. mybatis_05动态SQL_if和where
  8. 5G时代到来,那我们现在用的4G手机怎么办?
  9. JavaScript的NaN-唯一 一个自己不等于自己的对象!!
  10. 黑马vue实战项目-(六)商品列表组件的开发
  11. SCI论文降重技巧盘点 - 易智编译EaseEditing
  12. 单片机毕业设计 stm32智能温控风扇
  13. 手机端APP抓包环境的探索(安卓模拟器)
  14. Vim配置#pathogen插件管理工具
  15. 21 Excel动态图表实现原理
  16. 什么是DAPP?DAPP和APP相比有什么区别?
  17. MyBatis源码的学习(9)---映射器mappers的的XML解析
  18. Visual Studio 2019 许可证过期解决方法
  19. 百度云虚拟机访问项目404
  20. 3D音频再现理论研究(一)---3D音频技术历史介绍(转)

热门文章

  1. python3怎样交换数字顺序_python中怎么交换列的顺序
  2. 【ArcGIS风暴】ArcGIS10.6创建LAS数据集的两种方法并加载点云数据
  3. 【学生选课系统经典】C#与SQLSERVER连接:ASP.NET网站(服务器端,IIS发布)
  4. Java之HashMap、Hashtable、LinkedHashMap、TreeMap、ConcurrentHashMap简单的区别
  5. C和指针之数组和函数部分总结
  6. C和C++里面常见错误和异常出现怎么解决总结(不断更新)
  7. [python opencv 计算机视觉零基础到实战] 十、图片效果毛玻璃
  8. clob字段怎么导出_Oracle 11g及12c+版本下为啥有些表不能exp导出?
  9. 八类网线和七类网线的区别_什么是七类网线?七类网线水晶头如何制作?
  10. access的ole对象换成mysql_ACCESS的Ole对象读取写入