在此示例中,我們將學(xué)習(xí)如何在Java 程序執(zhí)行前序樹遍歷 。
class Node {
int item;
Node left, right;
public Node(int key) {
item = key;
left = right = null;
}
}
class Tree {
//Tree 的根
Node root;
Tree() {
root = null;
}
void preorder(Node node) {
if (node == null)
return;
//遍歷根節(jié)點(diǎn)
System.out.print(node.item + "->");
//遍歷左子元素
preorder(node.left);
//遍歷右子元素
preorder(node.right);
}
public static void main(String[] args) {
//創(chuàng)建樹對(duì)象
Tree tree = new Tree();
//創(chuàng)建樹的節(jié)點(diǎn)
tree.root = new Node(1);
tree.root.left = new Node(12);
tree.root.right = new Node(9);
tree.root.left.left = new Node(5);
tree.root.left.right = new Node(6);
//前序樹遍歷
System.out.println("\n前序樹遍歷 ");
tree.preorder(tree.root);
}
}
輸出結(jié)果
前序樹遍歷 1->12->5->6->9->
在上面的示例中,我們已經(jīng)用Java實(shí)現(xiàn)了樹數(shù)據(jù)結(jié)構(gòu)。在這里,我們正在執(zhí)行樹的前序遍歷。