Contoh ini membagikan kode spesifik untuk Java untuk mengimplementasikan inversi daftar tertaut satu arah untuk referensi Anda. Konten spesifiknya adalah sebagai berikut
1. Menerapkan kode
kelas publik LinkedListTest {public static void main (string [] args) {node a = new node ("a"); Node b = node baru ("b"); Node c = node baru ("c"); Node d = node baru ("d"); Node e = node baru ("e"); Node f = node baru ("f"); A.next = b; B.Next = C; C.next = d; D.Next = E; E.next = f; cetak (a); LinkedListreversor Reversor = LinkedListreversor.Recursion; System.out.println (Reversor.GetStrategy () + ":"); Node tmp = reversor.execute (a); cetak (TMP); Reversor = LinkedListreversor.no_recursion; System.out.println (Reversor.GetStrategy () + ":"); cetak (reversor.execute (TMP)); } private static void print (node node) {while (node! = null) {System.out.print (node.value); node = node.next; if (node! = null) {System.out.print ("->"); } else {System.out.println (); }}}}}} class node {nilai string publik; node publik selanjutnya; node publik (nilai string) {this.value = nilai; }} enum linkedlistreversor {recursion ("recursion") {@Override public node execute (simpul node) {node prev = null; if (node == null || node.next == null) {prev = node; } else {node tmp = execute (node.next); node.next.next = node; node.next = null; prev = tmp; } return prev; }}, No_recursion ("non-recursive") {@Override node public execute (simpul simpul) {node prev = null; while (node! = null) {node tmp = node; node = node.next; tmp.next = prev; prev = tmp; } return prev; }}; strategi string pribadi; Private LinkedListreversor (String Strategy) {this.strategy = strategi; } Public Abstract Node Execute (simpul simpul); string publik getStrategy () {return strategi; }}2. Ide Implementasi
Rekursi: Mulai dari ekor
Non-Recursive: Mulai memproses dari kepala
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.