前言
在
console
代码中输出一个树形的结构,这个在写堆排序的时候,直接打印树形结构debug,很爽,实际效果很水,如下图
代码
int[] arr = new int[]{2, 7, 4, 20, 11, 16, 8, 13, 17, 19, 3, 56, 68, 29, 18};
int len = arr.length;
int ceng = (int) Math.sqrt(len) + 1;
for (int i = 0; i <= ceng; i++) {
int frontT = (int) Math.pow(2, ceng - i - 1);
for (int t = 0; t < frontT; t++)
System.out.print("\t");
int cStart = (int) Math.pow(2, i) - 1;
int cNum = (int) Math.pow(2, i);
for (int j = 0; j < cNum; j++) {
if (cStart + j > len - 1)
continue;
System.out.print(arr[cStart + j]);
int middleT = (int) Math.pow(2, ceng - i);
for (int t = 0; t < middleT; t++)
System.out.print("\t");
}
System.out.println();
System.out.println();
}