剑指Offer

    xiaoxiao2026-03-01  6

    题目描述

    从上往下打印出二叉树的每个节点,同层节点从左至右打印。

    解题思路

    此题是树的层次变量,使用队列保存当前变量结点的左右孩子,循环遍历,直到队列为空。

    实现

    import java.util.ArrayList; /*树结构定义*/ public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } /*实现*/ import java.util.*; public class Solution { public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) { ArrayList<Integer> list = new ArrayList<>(); LinkedList<TreeNode> queue = new LinkedList<>(); if (root == null) return list; queue.offer(root); while (!queue.isEmpty()){ TreeNode node = queue.poll(); list.add(node.val); if (node.left != null) queue.offer(node.left); if (node.right != null) queue.offer(node.right); } return list; } }
    转载请注明原文地址: https://ju.6miu.com/read-1307503.html
    最新回复(0)