leetcodeno.199二叉树的右视图

AI算法攻城狮 AI算法攻城狮     2023-01-02     411

关键词:

一、题目描述

给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

示例 1:
输入: [1,2,3,null,5,null,4]
输出: [1,3,4]

示例 2:
输入: [1,null,3]
输出: [1,3]

示例 3:
输入: []
输出: []

提示:
二叉树的节点个数的范围是 [0,100]
-100 <= Node.val <= 100 

二、解题思路

No.102 二叉树的层序遍历:https://xingqijiang.blog.csdn.net/article/details/119582945

No.107 二叉树的层序遍历 II:https://blog.csdn.net/jxq0816/article/details/119619353

我们可以对二叉树进行层次遍历,那么对于每层来说,最右边的结点一定是最后被遍历到的。二叉树的层次遍历可以用广度优先搜索实现。

执行广度优先搜索,左结点排在右结点之前,这样,我们对每一层都从左到右访问。因此,只保留每一层最后访问的结点,我们就可以在遍历完整棵树后得到每个深度最右的结点。

199.二叉树的右视图

  很简单,来个层次遍历,当遍历队列,遍历到刚开始遍历时,队列里最后一个数时(也就是遍历len-1次),得到的就是右视图的其中一个节点/***Definitionforabinarytreenode.*publicclassTreeNode*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(int... 查看详情

二叉树oj----->二叉树的右视图(代码片段)

题目内容: 解题思路:基本思路还是借助于层序遍历,用list接收在每层元素在进行遍历时,我们只需接收最后i==count-1元素即可解题代码:classSolutionpublicList<Integer>rightSideView(TreeNoderoot)List<Integer>... 查看详情

199.二叉树的右视图(代码片段)

199.二叉树的右视图题目算法设计:深度优先搜索 题目传送门:https://leetcode.cn/problems/binary-tree-right-side-view/ 算法设计:深度优先搜索一开始我以为只需要获取根节点、所有右节点即可,那就只需要右序遍历。从... 查看详情

leetcode199二叉树的右视图(代码片段)

一.问题描述给定一个二叉树的根节点root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。输入:[1,2,3,null,5,null,4]输出:[1,3,4]二.示例代码publicclassBSTRightView199publicstaticvoidmain(String[]args)... 查看详情

领扣(leetcode)二叉树的右视图个人题解(代码片段)

给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。示例:输入: [1,2,3,null,5,null,4]输出: [1,3,4]解释:1<---/23<---54<---拿到这题,一开始的思路是强行遍历右节点,后来发... 查看详情

leetcode刷题python199.二叉树的右视图(代码片段)

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

牛客top200---输出二叉树的右视图(java)(代码片段)

题目思路首先,需要重建二叉树,这个之前碰到过,重建二叉树跳转链接,然后可以对重建后的二叉树进行层次遍历,将每层最后一个节点值放入数组中,最后层次遍历结束返回数组即可,这里数组由... 查看详情

199.二叉树的右视图

  很简单,来个层次遍历,当遍历队列,遍历到刚开始遍历时,队列里最后一个数时(也就是遍历len-1次),得到的就是右视图的其中一个节点/***Definitionforabinarytreenode.*publicclassTreeNode*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(int... 查看详情

二叉树的右视图

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

199.二叉树的右视图(代码片段)

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

面试---算法面试(代码片段)

算法二叉树二叉树的遍历(前序、中序、后序、层序)递归版本非递归版本二叉树的常见oj二叉树的右视图N叉树的层序遍历反转二叉树对称二叉树子树问题二叉树的最近祖先问题二叉树的最大高度问题二叉树的最小深度完全二叉树... 查看详情

199.二叉树的右视图-字节跳动高频题(代码片段)

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

199.二叉树的右视图(代码片段)

199.二叉树的右视图题目算法设计:深度优先搜索 题目传送门:https://leetcode.cn/problems/binary-tree-right-side-view/ 算法设计:深度优先搜索一开始我以为只需要获取根节点、所有右节点即可,那就只需要右序遍历。从... 查看详情

树/森林和二叉树的转换

树转二叉树左儿子右兄弟,即第一个儿子是左二子,第一个兄弟是右儿子,然后按层次按顺序调整每一个即可。规范做法是三步:加线:同一层的兄弟按顺序加线。去线:保留第一个儿子,其他儿子连线删掉。调整层次。森林转二... 查看详情

树森林和二叉树的转换

树转换为二叉树(1)加线。在所有兄弟结点之间加一条连线。(2)去线。树中的每个结点,只保留它与第一个孩子结点的连线,删除它与其它孩子结点之间的连线。(3)层次调整。以树的根节点为轴心,将整棵树顺时针旋转一... 查看详情

leetcode刷题笔记-数据结构-day16(代码片段)

文章目录LeetCode刷题笔记-数据结构-day16199.二叉树的右视图1.题目描述2.解题思路3.代码113.路径总和II1.题目描述2.解题思路3.代码450.删除二叉搜索树中的节点1.题目描述2.解题思路3.代码LeetCode刷题笔记-数据结构-day16199.二叉树的右视... 查看详情

树与二叉树的转换和遍历关系

1、树转换为二叉树由于二叉树是有序的,为了避免混淆,对于无序树,我们约定树中的每个结点的孩子结点按从左到右的顺序进行编号。将树转换成二叉树的步骤是:(1)加线。就是在所有兄弟结点之间加一条连线;(2)抹线... 查看详情

求二叉树的左右视图(代码片段)

文章目录求二叉树的左右视图题目描述题目链接解题思路求二叉树的左右视图题目描述题目链接二叉树的左右视图解题思路思路想象自己站在树的右侧,返回能看到的节点值。每一层都只能看到最右边的节点。很容易想到层序遍... 查看详情