Re: Reihenfolge der Elemente in einem Hashfeld

"korny" <[email protected]> Fri, 29 Nov 2002 15:21:25 +0100
Newsgroups gmane.comp.lang.ruby.german
Message-ID <003001c297b2$a5216fc0$036ffea9@murphy>
ich vermute, dass der hash in einem heap gespeichert wird, also einem
sortierten (binären?) baum, so dass der zugriff über die keys (hash[key])
möglichst schnell läuft. sonst wäre auch der sinn weg.
da ich keine lust habe, mir c-code durchzulesen, vermute ich außerdem, dass
für each dieser baum dann rekursiv durchlaufen wird.
sollte ruby die keys allerdings den baum intern nicht nach dem inhalt der
keys, sondern nach deren "hash" sortieren (gemeint ist jetzt eine nicht
umkehrbare funktion, die daten auf eine zahl=hash abbildet), dann ist wohl
jede frage nach dem sinn der sortierung hinfällig.

{$MURPHY_BEST_REGARDS+}

----- Original Message -----
From: "Oliver Mensinger" <[email protected]>
To: <[email protected]>
Sent: Thursday, November 28, 2002 4:12 PM
Subject: Re: [ruby-de] Reihenfolge der Elemente in einem Hashfeld


> Hi Jonas,
>
> >das ist schon klar, mich verwunderte nur das die Ausgabe nicht der
Reihenfolge
> >der Eingabe entsprach. Ist das Zufall oder Speicheroptimiert oder wie ?
Ich
> >will nichts sortieren, mir geht es ums Prizip wie Ruby das macht.
>
> Gute Frage! Weiss ich leider auch nicht.
> Witzig ist, dass sich neue Elemente auch irgendwo ins Hash einfuegen, auch
> zwischen bereits existierenden Elementen, unabhaengig von irgendwelchen
> (offensichtlichen) Sortierkriterien.
>
> Gruesse, Oliver.
>
> _______________________________________________
> ruby-de mailing list
> [email protected]
> http://lists.bttr.org/mailman/listinfo/ruby-de
>