欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Leetcode 102 二叉树的层次遍历

程序员文章站 2022-05-20 10:19:07
...

Leetcode 102 二叉树的层次遍历

给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。

详解:这道题没什么好说的,层次遍历是二叉树一种非常基础的遍历方式,

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