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);
}
}
}