首页 > 其他 > 详细

leetcode 199. 二叉树的右视图 剑指 Offer II 046. 二叉树的右侧视图

时间:2021-09-06 06:37:28      阅读:16      评论:0      收藏:0      [点我收藏+]

给定一个二叉树的 根节点 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 

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/binary-tree-right-side-view
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

层级遍历二叉树

1:层级遍历二叉树,用两个队列来记录每一层的节点。

2:当遇到最后一个节点的时候,则添加到list中。

    public List<Integer> rightSideView(TreeNode root) {
         List<Integer> list = new ArrayList<>();
        if (root == null) {
            return list;
        }
        Queue<TreeNode> a = new LinkedList<>();
        Queue<TreeNode> b = new LinkedList<>();
        a.offer(root);
        TreeNode pop = null;
        if (root == null) {
            return list;
        }
        while (!a.isEmpty()) {
            while (!a.isEmpty()) {
                pop = a.poll();
                if (pop.left != null) {
                    b.offer(pop.left);
                }
                if (pop.right != null) {
                    b.offer(pop.right);
                }
            }
            a = b;
            b = new LinkedList<>();
            list.add(pop.val);
        }
        return list;
    }

技术分享图片

leetcode 199. 二叉树的右视图 剑指 Offer II 046. 二叉树的右侧视图

原文:https://www.cnblogs.com/wangzaiguli/p/15227915.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!