Thema: Delphi Mächtigkeit einer Menge

Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: Mächtigkeit einer Menge

  Alt 14. Mai 2007, 14:39
Sets werden als 8-Byte Blöcke gespeichert, pro Bit ein Element der Menge (deshalb sind Mengen auf 255 Elemente beschränkt).

Der einzige offizielle Weg ist, für alle Elemente zu prüfen, ob Sie in der Menge sind.

Der inoffizielle Weg macht sich das interne Format der Mengen (8 Bytes) zunutze und ermittelt die Anzahl der gesetzten Bits. Auch hier gibt es keine echte Funktion, sodaß shmia einfach für jedes Nibble (4 bit) eine Lookup-Tabelle der Anzahl im Nibble gesetzten Bits erstellt hat. Dann addiert er für jedes der 16 (=2 x 8 Bytes) Nibbles die Werte aus der Lookuptabelle.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat