Rumah >Java >javaTutorial >Bagaimana untuk Melaksanakan Struktur Data Pokok dengan Nod Anak Arbitrari di Jawa?
Mewakili pokok dalam Java boleh dicapai menggunakan kelas perpustakaan Java standard. Untuk memenuhi keperluan khusus anda di mana nod mempunyai bilangan kanak-kanak sewenang-wenangnya dan kedua-dua nod dan kanak-kanak mempunyai nilai rentetan, anda boleh mempertimbangkan penyelesaian berikut.
Memandangkan tiada perpustakaan Java yang dipratentukan untuk pokok dengan kanak-kanak sewenang-wenangnya, anda boleh menentukan struktur pokok tersuai:
public class Tree<T> { private Node<T> root; public Tree(T rootData) { root = new Node<>(); root.data = rootData; root.children = new ArrayList<>(); } public static class Node<T> { private T data; private Node<T> parent; private List<Node<T>> children; } }
Struktur pokok asas ini membolehkan anda mewakili nod dan nilai rentetannya.
Untuk mendapatkan kanak-kanak dan nilai rentetan mereka untuk nod tertentu, anda boleh menambah kaedah pembantu pada kelas Nod:
public List<String> getChildrenStrings() { List<String> childStrings = new ArrayList<>(); for (Node<T> child : children) { childStrings.add(child.data); } return childStrings; }
Untuk menggunakan struktur pokok ini, anda boleh mencipta pokok dengan akar nod:
Tree<String> myTree = new Tree<>("Root");
Anda kemudian boleh menambah nod anak pada akar:
myTree.root.addChild("Child 1"); myTree.root.addChild("Child 2");
Untuk mendapatkan semula rentetan kanak-kanak untuk nod yang diberikan, anda boleh menggunakan:
List<String> childStrings = myTree.root.getChildrenStrings();
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Struktur Data Pokok dengan Nod Anak Arbitrari di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!