当前位置: 首页 > news >正文

199.二叉树的右视图(DFS)

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

示例 1:

在这里插入图片描述

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

示例 2:

输入: [1,null,3]
输出: [1,3]

示例 3:

输入: []
输出: []

解题思路

本文使用dfs思想,先递归右子树,再递归左子树,当某个深度首次到达时,对应的节点就在右视图中。

/*** 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 {vector<int> re;void dfs(TreeNode* node,int deep){if(!node){return;}if(deep==re.size()){re.push_back(node->val);}dfs(node->right,deep+1);dfs(node->left,deep+1);}public:vector<int> rightSideView(TreeNode* root) {dfs(root,0);return re;}
};
http://www.lryc.cn/news/403036.html

相关文章:

  • 机器学习基础入门(1)
  • mybatis的xml中,where标签不自动删除多余的and之类的问题
  • RK3588 编译opencvopencv_contrib记录
  • Eureka: 微服务架构中的服务发现与注册实践
  • 8、添加第三方包
  • 【算法】算法模板
  • 特征工程方法总结
  • Unity | AssetBundle
  • 【虚幻引擎】C++网络通信TCP和HTTP实战开发全流程,以接入科大讯飞星火大模型和文心一言千帆大模型为案例讲解
  • .NET单元测试使用AutoFixture按需填充的方法总结
  • 求职学习day5
  • 微服务常用的中间件有哪些?都有什么用途?
  • 华为云认证
  • 【Linux学习】常用基本指令
  • windows上安装Apache
  • wps office 2019 Pro Plus 集成序列号Vba安装版教程
  • 院内影像一体化平台PACS源码,C#语言的PACS/RIS系统,二级医院应用案例
  • 基于java的设计模式学习
  • 组合数学+费用背包+刷表,G2 - Playlist for Polycarp (hard version)
  • 阿尔泰科技利用485模块搭建自动灌溉系统实现远程控制
  • Python正则表达式中的分组
  • openstack设置IP直接登录,不需要加dashboard后缀
  • PHP宠物店萌宠小程序系统源码
  • nginx负载均衡实例
  • 正则表达式在Python中的高级应用:从HTML中提取数据
  • docker compose 部署交互模式的容器-以Ubuntu为例
  • display: flex 和 justify-content: center 强大居中
  • 记录贴-idea导入别人的项目
  • 算法第九天:leetcode59.螺旋矩阵II
  • androidkiller重编译apk失败的问题