首页 > 其他分享 >LC[199] 二叉树的右视图

LC[199] 二叉树的右视图

时间:2022-11-21 22:58:25浏览次数:75  
标签:视图 199 TreeNode dfs vector 二叉树 ans return

[199] 二叉树的右视图

题目链接: https://leetcode.cn/problems/binary-tree-right-side-view/description/

WA

一开始的想法是遍历二叉树,只需要右分枝即可。但是如果右边没有节点,就可以看到左边的点。

class Solution {
public:
    vector<int> ans;
    void dfs(TreeNode *t)
    {
        if (t == nullptr)
            return;
        ans.push_back(t->val);
        dfs(t->right);
    }
    vector<int> rightSideView(TreeNode *root)
    {
        dfs(root);
        return ans;
    }
};

AC

于是想到层次遍历,把每一层都从左到右存储下来。之后取每一层的最后一个节点

class Solution {
public:
    vector<int> ans[110];
    vector<int> res;
    int n = 0;
    void dfs(int u, TreeNode *t)
    {
        n = max(n, u);
        if (t == nullptr)
            return;
        ans[u].push_back(t->val);
        dfs(u + 1, t->left);
        dfs(u + 1, t->right);
    }

    vector<int> rightSideView(TreeNode *root)
    {
        dfs(1, root);
        for (int i = 1; i < n; i ++)
        {
            res.push_back(ans[i].back());
        }
        return res;
    }
};

标签:视图,199,TreeNode,dfs,vector,二叉树,ans,return
From: https://www.cnblogs.com/StarTwinkle/p/16913295.html

相关文章

  • MySQL安全管理之视图
    MySQL安全管理之视图什么是视图视图:view,一种又select指令组成的虚拟表,视图是虚拟表,可以使用表管理(结构管理),为视图提供数据的表叫做基表创建视图的基本语法:creat......
  • 【算法】Java解答有序链表转换二叉搜索树,从中序与后序遍历序列构造二叉树
    有序链表转换二叉搜索树给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差......
  • LeetCode199. Binary Tree Right Side View
    题意实现二叉树的右视图方法BFS代码/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*ri......
  • 二叉树交换左右子树递归以及非递归算法
    递归方式基本思想:1、当待处理节点非空时,判断其左右孩子是否不同时为空:若是,转到2、否则分别递归调用左右子树进行操作。2、新建一个辅助结点,执行交换操作。3、递归调用......
  • django-视图函数
    django中的视图函数分为两类,CBV和FBV FBV:一条路由对应一个函数 CBV:一条路由对应一个类,该类必须继承fromdjango.viewsimportView类urlpatterns=[re_path(......
  • 【Unity3D】Unity 组件 ④ ( 摄像机 | 调整摄像机 | 手工调整 | 3D 视图对齐 Align wi
    文章目录​​一、摄像机简介​​​​二、调整摄像机​​一、摄像机简介创建新的Scene场景时,会自带一个主摄像机MainCamera,其主要作用是进行摄像,游戏玩家看......
  • 距1990.1.1有多少天
    packagecom.exercise.date;/***@Author:Zxb*@Version:1.0*@Date:2022/11/20-11:59*@Since:jdk1.8*@Description:*/publicclassdate{publicstati......
  • 数据字典和动态性能视图
    数据字典存储在SYSTEM表空间中,包含对象定义、权限、用户角色等信息。USER_*用户所拥有的对象信息ALL_*用户能访问的对象信息DBA_*整个数据库中的对象信息系统中所......
  • 每日算法之判断是不是平衡二叉树
    JZ79判断是不是平衡二叉树描述输入一棵节点数为n二叉树,判断该二叉树是否是平衡二叉树。在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树平衡二叉树(Balan......
  • 遍历二叉树和线索二叉树
    遍历二叉树:   L:左D:根 R:右    DLR-先根遍历    LDR-中序遍历    LRD-后序遍历  要求:给一棵二叉树,写出它的三种遍历顺序   ......