199. 二叉树的右视图 --力扣 --JAVA

2023-12-14 14:52:47

题目

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

解题思路

  1. List添加元素的顺序可以作为树的层级;
  2. 将树以根右左的顺序遍历;
  3. 若当前层级已添加过元素则不再添加。

代码展示

class Solution {
    List<Integer> ans = new ArrayList<>();
    public List<Integer> rightSideView(TreeNode root) {
        rightView(root,0);
        return ans;
    }
    public void rightView(TreeNode root, int height){
        if(root == null){
            return;
        }
        if(ans.size() <= height || ans.get(height) == null){
            ans.add(root.val);
        }
        height++;
        rightView(root.right, height);
        rightView(root.left, height);
    }
}

文章来源:https://blog.csdn.net/qq_45794129/article/details/134923258
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。