二叉树按行打印,换行。。。。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树按行打印,换行。。。。相关的知识,希望对你有一定的参考价值。
public class Tree { TreeNode last; TreeNode nlast; public void printTree(TreeNode root) { Queue<TreeNode> queue = new LinkedList<>(); queue.add(root); last = root; nlast = root; while (!queue.isEmpty()) { TreeNode t = queue.peek(); System.out.print(queue.poll().data + " "); if (t.left != null) { queue.add(t.left); nlast = t.left; } if (t.right != null) { queue.add(t.right); nlast = t.right; } // 如果当前输出结点是最右结点,那么换行 if (last == t) { System.out.println(); last = nlast; } } }
差不多就是用俩指针,一个指向最后节点,另一个一次指向,当便利到的节点等于每行最后一个节点时就换行。。。。。。。。。
以上是关于二叉树按行打印,换行。。。。的主要内容,如果未能解决你的问题,请参考以下文章