在此示例中,我們將學(xué)習(xí)如何在Java 程序執(zhí)行前序樹(shù)遍歷 。
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)建樹(shù)對(duì)象 Tree tree = new Tree(); //創(chuàng)建樹(shù)的節(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); //前序樹(shù)遍歷 System.out.println("\n前序樹(shù)遍歷 "); tree.preorder(tree.root); } }
輸出結(jié)果
前序樹(shù)遍歷 1->12->5->6->9->
在上面的示例中,我們已經(jīng)用Java實(shí)現(xiàn)了樹(shù)數(shù)據(jù)結(jié)構(gòu)。在這里,我們正在執(zhí)行樹(shù)的前序遍歷。