本文为博主原创文章, 转载请注明: https://blog.csdn.net/u011339184/article/details/131529612
学习算法过程中, 需要打印二叉树, 自己动手写了一个实现, 可以打印完全二叉树和非完全二叉树, 打印效果如下:
1
/ \
2 3
/ \ \
4 5 2
/
1
二叉树节点类
public class TreeNode {
public int value;
public TreeNode left;
public TreeNode right;
public TreeNode(int value) {
this.value = value;
}
}
打印二叉树方法
// 左右节点分支, 分隔字符, 叶子节点基础间隔
private static final String TREE_LEFT_BRANCH = "/";
private static final String TREE_RIGHT_BRANCH = "\\";
private static final String TREE_SPLIT = " ";
private static final int TREE_BASE_INTERVAL = 3;
/**
* 二叉树打印;
*
* @param head 树根节点
*/
protected void treePrint(TreeNode head) {
List<List<Tr