Mailinglisten-Archive |
Mathias Gloss wrote: > Aloha, > > > > > >>From: Konstantin Rekk <k.rekk at intermatix.de>@phpbar.de on 26.05.2004 > > 19:20 ZE2 > > > >>erzeuge Array mit int-keys, dieses sollte aber sofort sortiert sein, > > also ohne > >>ksort()-Aufruf. >>.... >>Komme ich also um ksort($array) nicht drum-herum? > > > Nein. Das sortieren eines Arrays ist - gerade bei größeren Arrays - ein > Riesenaufwand. Den müsstest du ja bei jeder Einfügeoperation durchführen. > > Das einzigste was du machen kannst, ist ne eigene Arrayklasse o.ä. > basteln, > in der beim Einfügen eines neuen Elements (oder vor dem Auslesen, > jenachdem > was günstiger ist) die Werte des Arrays sortiert werden. > Aber wie gesagt, das kostet Rechenzeit. > > Einen fertigen Array-das-sortiert-bleibt-Datentyp gibts in php nicht. Leider ist mir noch nicht ganz klar worauf es wirklich hinausläuft, aber warum ein Array nehmen für Daten die sortiert sein und bleiben sollen, und auf denen ich ja auch noch suchen muss. Da gibt es wesentlich sinnvollere Datentypen (Bäume z.B.). Es gibt Bäume in denen der Sortier und Suchaufwand logarithmisch ist (AVL + 2-3-4 Baum AFAIK). Hoffe ich lieg jetzt nicht völlig daneben :) Markus
php::bar PHP Wiki - Listenarchive