Heim > Artikel > Backend-Entwicklung > Hübsches Drucken verknüpfter Listen in Python
Das Drucken einer verknüpften Liste in einer gut formatierten und lesbaren Weise ist für das Verständnis und die Fehlerbehebung von entscheidender Bedeutung. Dies kann mit der Pretty-Print-Funktion von Python problemlos durchgeführt werden. In diesem Artikel wird untersucht, wie Sie das hübsche Drucken verknüpfter Listen in Python implementieren.
Durch die organisierte und optisch ansprechende Darstellung von Knoten und ihren zugehörigen Informationen können Entwickler die Struktur verknüpfter Listen leicht visualisieren und so dabei helfen, Probleme zu verstehen und effektiv zu lösen. Erfahren Sie, wie Sie die Leistungsfähigkeit von Python nutzen, um die Übersichtlichkeit Ihrer verknüpften Listen zu verbessern.
Hier sind die Schritte, die wir befolgen, um eine verknüpfte Liste in Python hübsch zu drucken -
Zuerst definieren wir eine Klasse namens Node, die einen einzelnen Knoten in einer verknüpften Liste darstellt. Jeder Knoten verfügt über einen nächsten Zeiger und Datenattribute.
Als nächstes definieren wir die LinkedList-Klasse, die verknüpfte Listen verwaltet. Es verfügt über einen Attributheader, der auf den ersten Knoten in der verknüpften Liste verweist. Zunächst ist die Kopfzeile auf „None“ gesetzt, um eine leere Liste anzuzeigen.
add_node wird verwendet, um Knoten zur verknüpften Liste hinzuzufügen. Als Eingabe werden Datenparameter verwendet. Innerhalb dieser Methode erstellen wir ein neues Node-Objekt mit den angegebenen Daten. Wenn die verknüpfte Liste leer ist (d. h. der Kopf ist „None“), legen wir den neuen Knoten als Kopf fest. Andernfalls beginnen wir von vorne und bewegen uns zum nächsten Knoten, bis wir den letzten Knoten erreichen, und gelangen so zum Ende der Liste. Schließlich hängen wir den neuen Knoten an das Ende der Liste an, indem wir die nächste Eigenschaft des letzten Knotens aktualisieren.
pretty_print wird verwendet, um die verknüpfte Liste in einem lesbaren Format zu drucken. Wenn die verknüpfte Liste leer ist (d. h. der Kopf ist „None“), wird eine Meldung ausgegeben, die angibt, dass die verknüpfte Liste leer ist. Andernfalls durchlaufen Sie jeden Knoten von Anfang an. Es verfolgt die Knotennummern mithilfe einer Zählvariablen und druckt die Daten für jeden Knoten und die entsprechende Nummer aus. Die Methode setzt diesen Vorgang fort, bis sie das Ende der Liste erreicht.
get_length berechnet die Länge der verknüpften Liste und gibt sie zurück. Es durchläuft jeden Knoten beginnend am Kopf und erhöht für jeden angetroffenen Knoten eine Längenvariable. Schließlich wird die Gesamtlänge der Liste zurückgegeben.
Dann rufen wir die Methode pretty_print für das Objekt linked_list auf, um den Inhalt der Liste anzuzeigen. Dadurch werden die Daten für jeden Knoten und die entsprechende Nummer gedruckt.
Abschließend rufen wir die Methode get_length des Objekts linked_list auf, um die Länge der Liste zu berechnen und auszudrucken.
Wenn wir das Programm ändern möchten, befolgen Sie bitte die folgenden Schritte -
Sie können zusätzliche Methoden hinzufügen, um verschiedene Vorgänge in der verknüpften Liste auszuführen, z. B. nach einem bestimmten Wert suchen, einen Knoten löschen oder einen Knoten an einer bestimmten Stelle einfügen. Diese Methoden können der LinkedList-Klasse hinzugefügt werden.
Wenn Sie die Node-Klasse anpassen möchten, können Sie der Node-Klasse weitere Eigenschaften hinzufügen, um zusätzliche Informationen zu speichern.
Sie können die Pretty_print-Methode erweitern, um mehr Informationen zu jedem Knoten anzuzeigen. Sie können beispielsweise die Speicheradresse jedes Knotens drucken oder Pfeilsymbole drucken, um Verbindungen zwischen Knoten anzuzeigen.
Sie können die Methode add_node ändern, um Knoten am Anfang der Liste statt am Ende einzufügen.
Sie können Methoden implementieren, um eine verknüpfte Liste umzukehren, zwei verknüpfte Listen zusammenzuführen oder eine verknüpfte Liste in zwei separate Listen aufzuteilen.
In der folgenden Beispielverwendung erstellen wir ein LinkedList-Objekt, fügen Knoten mit den Werten 10, 20, 30, 40 und 50 hinzu und rufen dann die Methode pretty_print auf, um die Liste anzuzeigen. Schließlich rufen wir die Methode get_length auf, um die Länge der verknüpften Liste abzurufen und sie auszudrucken.
class Node: def __init__(self, d): self.d = d self.next = None class LinkedList: def __init__(self): self.head = None def add_node(self, d): new_node = Node(d) if self.head is None: self.head = new_node else: curr = self.head while curr.next: curr = curr.next curr.next = new_node def pretty_print(self): if self.head is None: print("Linked list is empty.") else: curr = self.head count = 1 while curr: print(f"Node {count}: {curr.d}") curr = curr.next count += 1 def get_length(self): length = 0 curr = self.head while curr: length += 1 curr = curr.next return length # Example usage linked_list1 = LinkedList() linked_list1.add_node(10) linked_list1.add_node(20) linked_list1.add_node(30) linked_list1.add_node(40) linked_list1.add_node(50) linked_list1.pretty_print() print(f"Length: {linked_list1.get_length()}")
Node 1: 10 Node 2: 20 Node 3: 30 Node 4: 40 Node 5: 50 Length: 5
Zusammenfassend können wir sagen, dass Entwickler durch die Implementierung hübscher Druckfunktionen für verknüpfte Listen in Python die Lesbarkeit und Visualisierung ihrer Datenstrukturen erheblich verbessern können. Eine klare und organisierte Darstellung verknüpfter Listen erleichtert das Verständnis und das Debuggen und ermöglicht eine effiziente Problemlösung. Dank der Flexibilität von Python ist es für jeden Programmierer eine einfache Aufgabe, die Klarheit verknüpfter Listen zu verbessern.
Das obige ist der detaillierte Inhalt vonHübsches Drucken verknüpfter Listen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!