Inhaltsverzeichnis
Knoten am Ende rekursiv hinzufügen
Rekursiv durch die Knoten iterieren
Beispiel
Die verwendete Methode im folgenden Programm wie folgt
Ausgabe
Heim Backend-Entwicklung C++ Rekursives Einfügen und Durchlaufen verknüpfter Listen in C++

Rekursives Einfügen und Durchlaufen verknüpfter Listen in C++

Sep 10, 2023 am 09:21 AM
递归 遍历 插入

Rekursives Einfügen und Durchlaufen verknüpfter Listen in C++

Wir erhalten die ganzzahligen Werte, die zur Bildung der verknüpften Liste verwendet werden. Die Aufgabe besteht darin, zuerst die einfach verknüpfte Liste einzufügen und sie dann mithilfe der rekursiven Methode zu durchlaufen.

Knoten am Ende rekursiv hinzufügen

  • Wenn der Kopf NULL ist → Knoten zum Kopf hinzufügen

  • Ansonsten zum Kopf hinzufügen (Kopf → Weiter)

Rekursiv durch die Knoten iterieren

  • Wenn der Kopf NULL ist → Beenden

  • Andernfalls drucken (Kopf → Weiter)

Beispiel

Eingabe− 1 - 2 - 7 - 9 - 10

Ausgabe

Ausgabe stark>−. Link Ed-Liste: 1 → 2 → 7 → 9 → 10 → NULL

Eingabe− 12 - 21 - 17 - 94 - 18

Ausgabe− Verknüpfte Liste: 12 → 21 → 17 → 94 → 18 → NULL

Die verwendete Methode im folgenden Programm wie folgt

In dieser Methode verwenden wir Funktionen, um Knoten hinzuzufügen und einfach verknüpfte Listen zu durchlaufen und sie für die nächste Eingabe rekursiv aufzurufen.

  • Akzeptiert eine Struktur SLLNode* mit einer Ganzzahl und einem nächsten Zeiger.

  • Funktion addtoEnd(SLLNode* head, int data) Ruft den Zeiger auf den Kopf der verknüpften Liste und die Ganzzahl des Datenteils ab und fügt den Knoten am Ende der verknüpften Liste hinzu.

    li>
  • Wenn der Kopfzeiger NULL ist, ist die Liste leer. Fügen Sie nun einen neuen Knoten hinzu und legen Sie ihn als Kopf fest. Füge head → next als NULL hinzu. Gibt einen Zeiger auf den Knoten zurück

  • Wenn head nicht null ist, verwenden Sie head->next = addtoEnd(head->next, data), um den Knoten zu head → next hinzuzufügen.

  • Function traverseList(SLLLNode* head) Durchläuft beginnend mit head und druckt jeden Wert.

  • Wenn head NULL ist, geben Sie NULL aus und geben Sie

  • zurück. Andernfalls drucken Sie den Datenwert aus und verwenden Sie traverseList(head->next), um den nächsten zu durchlaufen.

  • Verwenden Sie addtoEnd() in der Haupterstellungsliste und verwenden Sie traverseList(), um die Liste zu drucken.

Beispiel

#include <bits/stdc++.h>
using namespace std;
struct SLLNode {
   int data;
   SLLNode* next;
};
SLLNode* addtoEnd(SLLNode* head, int data){
   if (head == NULL){
      SLLNode *nodex = new SLLNode;
      nodex->data = data;
      nodex->next = NULL;
      return nodex;
   }
   else{
      head->next = addtoEnd(head->next, data);
    }
   return head;
}
void traverseList(SLLNode* head){
   if (head == NULL){
      cout <<"NULL";
      return;
   }
   cout << head->data << " -> ";
   traverseList(head->next);
}
int main(){
   SLLNode* head1 = NULL;
   head1 = addtoEnd(head1, 1);
   head1 = addtoEnd(head1, 8);
   head1 = addtoEnd(head1, 56);
   head1 = addtoEnd(head1, 12);
   head1 = addtoEnd(head1, 34);
   cout<<"Linked List is :"<<endl;
   traverseList(head1);
   return 0;
}
Nach dem Login kopieren

Ausgabe

Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert

Linked List is :
1 -> 8 -> 56 -> 12 -> 34 -> NULL
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonRekursives Einfügen und Durchlaufen verknüpfter Listen in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Rekursive Implementierung von C++-Funktionen: Gibt es eine Grenze für die Rekursionstiefe? Rekursive Implementierung von C++-Funktionen: Gibt es eine Grenze für die Rekursionstiefe? Apr 23, 2024 am 09:30 AM

Die Rekursionstiefe von C++-Funktionen ist begrenzt und das Überschreiten dieser Grenze führt zu einem Stapelüberlauffehler. Der Grenzwert variiert je nach System und Compiler, liegt aber meist zwischen 1.000 und 10.000. Zu den Lösungen gehören: 1. Tail-Rekursionsoptimierung; 2. Tail-Call;

Unterstützen C++-Lambda-Ausdrücke die Rekursion? Unterstützen C++-Lambda-Ausdrücke die Rekursion? Apr 17, 2024 pm 09:06 PM

Ja, C++-Lambda-Ausdrücke können die Rekursion mithilfe von std::function unterstützen: Verwenden Sie std::function, um einen Verweis auf einen Lambda-Ausdruck zu erfassen. Mit einer erfassten Referenz kann sich ein Lambda-Ausdruck rekursiv selbst aufrufen.

Verwendung des MINUS-Operators in SQL Verwendung des MINUS-Operators in SQL Feb 18, 2024 pm 04:53 PM

Verwendung von MINUS in SQL und spezifische Codebeispiele In SQL ist MINUS ein Operator, der zum Durchführen einer Differenzoperation zwischen zwei Ergebnismengen verwendet wird. Es wird verwendet, um dieselben Zeilen aus dem ersten Ergebnissatz wie im zweiten Ergebnissatz zu löschen. Die vom MINUS-Operator zurückgegebene Ergebnismenge enthält Zeilen, die nur in der ersten Ergebnismenge vorhanden sind. Das Folgende ist ein spezifisches Codebeispiel, um die Verwendung von MINUS zu demonstrieren: Angenommen, es gibt zwei Tabellen – „Tabelle1“ und „Tabelle2“. Ihre Strukturen sind wie folgt: Tabellenname: Feld Tabelle1

Rekursive Implementierung von C++-Funktionen: Vergleichende Analyse rekursiver und nichtrekursiver Algorithmen? Rekursive Implementierung von C++-Funktionen: Vergleichende Analyse rekursiver und nichtrekursiver Algorithmen? Apr 22, 2024 pm 03:18 PM

Der rekursive Algorithmus löst strukturierte Probleme durch den Selbstaufruf von Funktionen. Der Vorteil besteht darin, dass er einfach und leicht zu verstehen ist. Der Nachteil besteht jedoch darin, dass er weniger effizient ist und einen Stapelüberlauf verursachen kann Der Vorteil der Stapeldatenstruktur besteht darin, dass sie effizienter ist und einen Stapelüberlauf vermeidet. Der Nachteil besteht darin, dass der Code möglicherweise komplexer ist. Die Wahl zwischen rekursiv und nicht rekursiv hängt vom Problem und den spezifischen Einschränkungen der Implementierung ab.

Java, wie man einen Ordner durchläuft und alle Dateinamen abruft Java, wie man einen Ordner durchläuft und alle Dateinamen abruft Mar 29, 2024 pm 01:24 PM

Java ist eine beliebte Programmiersprache mit leistungsstarken Funktionen zur Dateiverarbeitung. In Java ist das Durchsuchen eines Ordners und das Abrufen aller Dateinamen ein üblicher Vorgang, der uns dabei helfen kann, Dateien in einem bestimmten Verzeichnis schnell zu finden und zu verarbeiten. In diesem Artikel wird erläutert, wie eine Methode zum Durchlaufen eines Ordners und zum Abrufen aller Dateinamen in Java implementiert wird, und es werden spezifische Codebeispiele bereitgestellt. 1. Verwenden Sie die rekursive Methode, um den Ordner zu durchlaufen. Die rekursive Methode ist eine Möglichkeit, sich selbst aufzurufen und den Ordner effektiv zu durchlaufen.

Detaillierte Erläuterung der C++-Funktionsrekursion: Anwendung der Rekursion bei der Zeichenfolgenverarbeitung Detaillierte Erläuterung der C++-Funktionsrekursion: Anwendung der Rekursion bei der Zeichenfolgenverarbeitung Apr 30, 2024 am 10:30 AM

Eine rekursive Funktion ist eine Technik, die sich selbst wiederholt aufruft, um ein Problem bei der Zeichenfolgenverarbeitung zu lösen. Es erfordert eine Beendigungsbedingung, um eine unendliche Rekursion zu verhindern. Rekursion wird häufig bei Operationen wie der String-Umkehr und der Palindromprüfung verwendet.

Ein Anfängerleitfaden zur C++-Rekursion: Grundlagen schaffen und Intuition entwickeln Ein Anfängerleitfaden zur C++-Rekursion: Grundlagen schaffen und Intuition entwickeln May 01, 2024 pm 05:36 PM

Rekursion ist eine leistungsstarke Technik, die es einer Funktion ermöglicht, sich selbst aufzurufen, um ein Problem zu lösen. In C++ besteht eine rekursive Funktion aus zwei Schlüsselelementen: dem Basisfall (der bestimmt, wann die Rekursion stoppt) und dem rekursiven Aufruf (der das Problem aufteilt). kleinere Teilprobleme). Indem Sie die Grundlagen verstehen und praktische Beispiele wie faktorielle Berechnungen, Fibonacci-Folgen und binäre Baumdurchläufe üben, können Sie Ihre rekursive Intuition entwickeln und sie sicher in Ihrem Code verwenden.

So fügen Sie Grafiken und Text der China-Karte in ein WPS-Dokument ein So fügen Sie Grafiken und Text der China-Karte in ein WPS-Dokument ein Mar 27, 2024 pm 02:01 PM

1. Öffnen Sie die WPS-Software und rufen Sie die WPS-Textbedienungsoberfläche auf. 2. Suchen Sie die Einfügeoption in dieser Schnittstelle. 3. Klicken Sie auf die Option „Einfügen“ und suchen Sie im Bearbeitungsbereich nach der Option „Form“. 4. Klicken Sie auf die Formoption und suchen Sie im Untermenü nach der empfohlenen Option. 5. Suchen Sie in den empfohlenen Optionen nach der Option „China-Karte“. 6. Klicken Sie auf die Option „China-Karte“ und ziehen Sie sie mit der linken Maustaste in den Bearbeitungseingabebereich, um die benötigte China-Karte zu erhalten.

See all articles