• Keine Ergebnisse gefunden

Übung 9: Hashing

N/A
N/A
Protected

Academic year: 2022

Aktie "Übung 9: Hashing"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Übung Praktische Informatik 2 SS 2016

Übung 9: Hashing

Abgabetermin: 31.05.2016

Name: __________________________________________ Matrikelnummer: ________________

Gruppe: G1 Di 10:15-11:00 G2 Di 11:00-11:45 G3 Di 12:45-13:30

Aufgabe Punkte gelöst abzugeben

schriftlich abzugeben

elektronisch Korr. Punkte

Aufgabe 1 24 Java-Programm Java-Programm

Testfälle und Ergebnisse

Aufgabe 1: Hashtabelle mit quadratischem Probieren (24 Punkte)

Implementieren Sie eine Hashtabelle zur Assoziation von String-Schlüsseln mit Object-Werten. Als Kollisionsstrategie verwenden Sie separate chaining und quadratic probing mit dem in der Vorlesung beschriebenen Trick, um bei der Suche alle Tabellenplätze zu besuchen. Die Schnittstelle ist durch die abstrakte Klasse Map gegeben.

package at.jku.pi.map;

abstract class Map {

abstract boolean containsKey(String key);

abstract Object get(String key);

abstract void put(String key, Object value);

abstract Object remove(String key);

}

class Element { final String key;

final Object value;

boolean isDeleted;

Element(String key, Object value) {...}

}

Implementieren Sie im Paket at.jku.pi.map.ue09 eine Klasse HashMapQuadraticProbing und HashMapSeparateChaining.

Implementierungshinweise:

a) Zur Berechnung des Hashcodes verwenden Sie

den Hash der String-Schlüssel modulo TAB_SIZE.

d)

Verwenden Sie die Methoden DotMaker.makeDotForHashtable(Element[] table) und DotMaker.makeDotForHashtable(Element[] table, float width), um GraphViz-Bilder Ihrer Hashtabelle zu erzeugen.

Abzugeben ist: Java-Programm, Testergebnisse

Referenzen

ÄHNLICHE DOKUMENTE

Institut für

Betrachten Sie den OFB (Output Feedback Mode) in Kombination mit der Affin-Linearen Blockchiffre auf dem Alphabet Σ =

Institut für

Verwenden Sie dabei Square-and-Multiply und geben Sie Ihre Rechenschritte als Tabelle wie in der Vorlesung an. Aufgabe 4 (10 Punkte): Eigenschaften

Führen Sie für folgende Zahlen den

Machen die Nachrichten von Alice und/oder die gefälschte Nachricht von Erich aus Aufgabenteil

Institut für Informatik

(c) I Geben Sie eine möglichst gute obere Schranke für die deterministische Zeitkom- plexität des Problems HamiltonCircuit an, d.h., geben Sie eine geeignete und möglichst