Dieses Beispiel teilt den spezifischen Code für Java zur Implementierung von Einweg-Listenlisteninversion als Referenz. Der spezifische Inhalt ist wie folgt
1. Implementieren Sie Code
public class linkedListTest {public static void main (String [] args) {node a = neuer node ("a"); Knoten B = neuer Knoten ("B"); Knoten C = neuer Knoten ("C"); Knoten d = neuer Knoten ("D"); Knoten e = neuer Knoten ("e"); Knoten F = neuer Knoten ("f"); A.Next = b; B.Next = C; C.Next = D; D.Next = e; E.Next = f; Druck (a); LinkedListreversor reversor = linkedListreversor.Recursion; System.out.println (Reveror.getStrategy () + ":"); Node tmp = Reversor.execute (a); print (tmp); Reversor = linkedListreversor.no_Recursion; System.out.println (Reveror.getStrategy () + ":"); print (reversor.execute (tmp)); } private static void print (Knotenknoten) {while (node! = null) {System.out.print (node.value); node = node.next; if (node! = null) {System.out.print ("->"); } else {System.out.println (); }}}}}} Klasse Node {public String Value; öffentlicher Knoten als nächstes; public node (string value) {this.Value = value; }} enum linkedListreversor {recursion ("recursion") {@Override public node execute (Knotenknoten) {Knoten 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 ("nicht recursive") {@Override public node execute (Knotenknoten) {node prev = null; while (node! = null) {node tmp = node; node = node.next; tmp.next = prev; PREV = TMP; } return prev; }}; private Strategie Strategie; private linkedListreversor (String -Strategie) {this.strategy = Strategie; } public abstrakter Knoten execute (Knotenknoten); public String getStrategy () {Return Strategy; }}2. Implementierungsideen
Rekursion: Ausgehend vom Schwanz
Nicht rekursiv: Beginnen Sie mit der Verarbeitung vom Kopf
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.