Hello Jürgen,
#Modellvorstellung: es gibt eine Verkettung von Elementen. Deren Reihenfolge bleibt erhalten. Erweiterungen können am Ende "automatisch" oder mit array_push oder am Anfang mit array_unshift vorgenommen werden
Die Elemente tragen Eigenschaften:
- Vorgänger (1)
- Nachfolger (2)
- Schlüssel
- Wert
- Datentyp (Elementtyp: Knoten/Blatttypen)
Wenn Datentyp == Knoten ist, zeigt Wert auf eine weitere Liste.
Damit wird dann aus der einfachen Liste (Kette) eine Liste von Listen (Baum, auch unvollständige oder unregelmäßige Baumstruktur).
Selbstverständlich kann man Ketten und Bäume sortieren nach jeweils einer der Eigenschaften ihrer Elemente.
Wie PHP das wirklich baut (Hashlists) interessiert hier nicht. PHP sorgt dafür, dass innerhalb einer Kette (Liste) kein Schlüssel doppelt vorkommen kann. Und PHP sorgt sich um die Allokation/Rückgabe und die Größe des benötigten Speicherplatzes für den Wert ("Payload"). Darum muss sich der Programmierer also nicht kümmern.
#BTW: Und wer mir auf meinen Beitrag ein (-1) gegeben hat, hat Arrays (eigentlich Baumstrukturen) in PHP noch nicht verstanden und was man damit alles anstellen kann ;-)
Allerdings muss ich gestehen, dass der Wiki-Artikel ohne Bilder auch nur schwer zu verstehen ist. Die wollte ich immer nochmal nachliefern zusammen mit den nicht ausgefüllten Absätzen.
Das gab es wohl schon mal im Archiv. Ist aber leider nicht mehr erreichbar.
Ein paar Fragmente sind noch da:
Liebe Grüße
Tom S.
Es gibt nichts Gutes, außer man tut es!
Das Leben selbst ist der Sinn.