Heim > Backend-Entwicklung > C++ > Hauptteil

Dia – Neuimplementierung einer doppelt verknüpften kreisförmigen Liste

Susan Sarandon
Freigeben: 2024-10-20 06:11:30
Original
220 Leute haben es durchsucht

Ich habe einige Anpassungen an der ursprünglichen Version meiner Liste vorgenommen, jetzt erfüllt sie die im Material von Professor Maziero festgelegten Anforderungen. Ich habe es angepasst, um die Tests zu bestehen, und habe mich auch für die Verwendung von readapt für C entschieden. Die Kompilierung zusammen mit der verfügbaren Testdatei schien auf diese Weise weniger problematisch zu sein.

Als ich den Code für diese Liste noch einmal durchging, musste ich einfachere Listen überdenken, die vor der doppelverketteten kreisförmigen Liste standen, damit ich beim Codieren solide Argumente zusammenstellen konnte.

Doppelt verknüpfte Liste

Es handelt sich um eine Struktur, in der jeder Knoten drei Teile enthält: Wert, Zeiger auf den nächsten Knoten und Zeiger auf den vorherigen Knoten.

Ermöglicht die bidirektionale Navigation. Um einen Knoten zu entfernen oder hinzuzufügen, müssen lediglich die Punkte des vorherigen und nächsten Knotens angepasst werden.

[head] <-> [nó1] <-> [nó2] <-> [tail]
Nach dem Login kopieren

Zirkuläre Liste

Es kann einfach verkettet (einseitige Richtung) oder doppelt verkettet werden (das verwende ich für das Projekt).
Der letzte Knoten in der Liste ist mit dem ersten verbunden, was bedeutet, dass die Liste keinen natürlichen Endpunkt hat.
Die Liste kann unbegrenzt durchgeblättert werden, denn wenn sie das Ende erreicht, kehrt sie zum Anfang zurück.

Doppelt verknüpfte zirkuläre Liste und ihre Beziehung zu Betriebssystemen

Durch die Verwendung einer zirkulären doppelt verknüpften Liste verfügt das Betriebssystem über eine zirkuläre Skalierungsfunktion.

Das heißt, nachdem der letzte Prozess ausgeführt wurde, kehrt das System zum ersten zurück und setzt die Ausführung fort.

Stellen Sie sich vor, dass ein Betriebssystem drei Prozesse hat:

[P1] <-> [P2] <-> [P3] <-> [P1] ...
Nach dem Login kopieren

Nachdem P3 seine Ausführungszeit beendet hat, kehrt die Liste direkt zu P1 zurück, um eine kontinuierliche Ausführung sicherzustellen.

Den aktuellen Betriebssystemcode finden Sie hier.

Dia - Reimplementando lista circular duplamente encadeada

Das obige ist der detaillierte Inhalt vonDia – Neuimplementierung einer doppelt verknüpften kreisförmigen Liste. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!