Heim > Java > javaLernprogramm > Java-Codebeispiel zur Implementierung einer umgekehrt verknüpften Liste

Java-Codebeispiel zur Implementierung einer umgekehrt verknüpften Liste

黄舟
Freigeben: 2017-10-17 10:11:11
Original
1510 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich das Codebeispiel für die Implementierung einer umgekehrt verknüpften Liste in der Java-Sprache vorgestellt. Der Herausgeber findet es ziemlich gut, daher werde ich es hier als Referenz für Freunde teilen, die es benötigen.

Problembeschreibung

Definieren Sie eine Funktion, die den Kopfknoten einer verknüpften Liste eingibt, die verknüpfte Liste umkehrt und den Kopfknoten der umgekehrten verknüpften Liste ausgibt. Die verknüpften Listenknoten lauten wie folgt:


public class ListNode {
  int val;
  ListNode next = null;
  ListNode(int val) {
    this.val = val;
  }
}
Nach dem Login kopieren

Idee 1:

Um die verknüpfte Liste umzukehren, für Knoten i , wir Um es auf seinen Vorgänger zu verweisen, müssen wir den Vorgängerknoten speichern. Wenn wir gleichzeitig den Nachfolger von i neu zugewiesen haben, können wir ihn nicht finden Ich muss meinen Nachfolger retten.

Code:


public ListNode ReverseList(ListNode head) {
    if(head == null){
      return null;
    }
    ListNode rHead = null;
    ListNode prior = null;//store prior
    ListNode q = head;//store current
    while(q != null){
      ListNode next = q.next;//store the next
      if(next == null){
        rHead = q;
      }
      q.next = prior;
      prior = q;
      q = next;
    }
    return rHead;
  }
Nach dem Login kopieren

Idee 2:

Verwenden Sie die Idee der Rekursion (I Ich habe noch nicht darüber nachgedacht, denn wenn Rekursion verwendet wird, sollte es jedes Mal sein: der erste Knoten der verknüpften Liste – der Endzeiger der durch die Rekursion zurückgegebenen verknüpften Liste, aber in diesem Fall kann der umgekehrte Kopfzeiger nicht sein erhalten.) Lassen Sie uns später darüber nachdenken.

Zusammenfassung

Das obige ist der detaillierte Inhalt vonJava-Codebeispiel zur Implementierung einer umgekehrt verknüpften Liste. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage