输入一棵二元树,从上往下按层打印每个节点,每层从左往右打印。利用队列。
Posted 32ddd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输入一棵二元树,从上往下按层打印每个节点,每层从左往右打印。利用队列。相关的知识,希望对你有一定的参考价值。
mport java.util.ArrayDeque; class TreeNode { TreeNode left; TreeNode right; int val; TreeNode(int x) { val = x; } } public class test { public void print(TreeNode root) { ArrayDeque<TreeNode> queue = new ArrayDeque<>(); if(root == null) { return; } queue.add(root); //当时懵逼,只知道循环队列,不知道节点怎么循环,后来发现让队列存储节点而不是节点值,每次取出节点当头结点,就可以循环节点了 while(!queue.isEmpty()) { TreeNode node = queue.poll(); System.out.print(node.val+"\t"); if(node.left!=null) { queue.add(node.left); } if(node.right!=null) { queue.add(node.right); } } }
以上是关于输入一棵二元树,从上往下按层打印每个节点,每层从左往右打印。利用队列。的主要内容,如果未能解决你的问题,请参考以下文章