7
我已經實現了以下代碼以按級別順序打印二叉搜索樹。打印級別順序二進制搜索樹格式
public void printLevelOrder(int depth) {
for (int i = 1; i <= depth; i++) {
printLevel(root, i);
}
}
public void printLevel(BinaryNode<AnyType> t, int level) {
if (t == null) {
return;
}
if (level == 1) {
System.out.print(t.element);
} else if (level > 1) {
printLevel(t.left, level - 1);
printLevel(t.right, level - 1);
}
}
我想弄清楚如何改進我的代碼,讓它以某種格式打印出來。
舉個例子,給定一個樹
1
/\
2 3
//\
4 5 6
目前它打印像這樣:
123456
我找它來打印如下:
Level 0: 1
Level 1: 2 3
Level 2: 4 5 6
讓函數'printLevel'返回節點號碼作爲字符串而不是立即執行打印。然後,您可以以任何您想要的格式連接這些字符串。 – Aziz