• 欢迎光临~

二叉树的右视图

开发技术 开发技术 2022-10-22 次浏览

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

 

 public List<Integer> rightSideView(TreeNode root) {
        List<Integer> list = new ArrayList<>();
        if(root==null){
            return list;
        }
        Queue<TreeNode> queue = new LinkedList<TreeNode>();
        queue.offer(root);
        while(!queue.isEmpty()){
            int size = queue.size();
            for(int i=0;i<size;i++){
                TreeNode treeNode =  queue.poll();
                if(i==0){
                   list.add(treeNode.val);
                }
                if(treeNode.right!=null){
                    queue.offer(treeNode.right);
                }
                if(treeNode.left!=null){
                    queue.offer(treeNode.left);
                }
            }
        }
        return list;
    }

 

程序员灯塔
转载请注明原文链接:二叉树的右视图
喜欢 (0)