मैं स्तर के क्रम में एक द्विआधारी खोज वृक्ष मुद्रित करने के लिए निम्न कोड लागू किया है।मुद्रण स्तरीय आदेश द्विआधारी खोज वृक्ष प्रारूपण
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