Implementierung assoziativer Arrays V

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]

Hashes.om
PROCEDURE Insert(hash: Hash; object: Objects.Object);
   (* precondition: object must be acceptable for hash
      adds object to hash
   *)
   VAR
      ok: BOOLEAN;
      hashval: HashValue;
      entry, predecessor: Entry;
BEGIN
   ok := ~Find(hash, object, hashval, entry, predecessor);
   ASSERT(ok);
   NEW(entry);
   entry.object := object;
   entry.next := hash.bucket[hashval];
   hash.bucket[hashval] := entry;
END Insert;

*Analog zu SortedBinaryTrees wird hier darauf bestanden, daß Schlüssel eindeutig sind.
 
*Genauso wie bei den Stapeln werden neu hinzukommende Einträge vor dem ersten Eintrag eingefügt.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 29.06.1999