• Keine Ergebnisse gefunden

¨Ubungsblatt 11 Abgabe: 26.1.2008

N/A
N/A
Protected

Academic year: 2021

Aktie "¨Ubungsblatt 11 Abgabe: 26.1.2008"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Praktische Informatik I WS 2008/09

Ubungsblatt 11 ¨

Abgabe: 26.1.2008

Datenverwaltung

Wenn es gilt, eine grosse Anzahl an Datens¨atzen zu verwalten, haben die bisher vor- gestellten Organisationsstrukturen Vor- und Nachteile. Nehmen wir beispielsweise die Kundenverwaltung der FirmaRaff & Zahn Ltd, Cayman Isl., die kostenpflichtige Repetitorien zur praktischen Informatik anbieten will.

Hier werden als Daten von (potentiellen) Kunden folgende Informationen vorgehal- ten: Der Name in der FormNachname, Vorname, die Kundennummer, der Name der Universit¨at, die e-mail Adresse, und eine Referenz auf den eigentlichen Datensatz, in dem die bisherigen Gesch¨aftsbeziehungen dokumentiert werden.

Ihr sollt nun die Verwaltung dieser Daten implementieren, damit Raff & Zahn Da- tens¨atze aufnehmen kann, bei Vorlage vonNachname, Vornameauf die entsprechen- den Datens¨atze zugreifen kann und den kompletten Datenbestand durchlaufen kann – etwa um die e-mail Adressen rauszusammeln und zu verkaufen. Es gelingt Euch sogar, den Auftrag gegen einen geringen Aufpreis um das L¨oschen von Datens¨atzen zu erweitern.

Die h¨aufigsten T¨atigkeiten der Firma betreffen die Bearbeitung einzelner Datens¨atze – diese m¨ussen also schnell zugreifbar sein. Hier soll ein String–Hashing verwendet werden, mit dem in einem Array von Listen von Kundendatenverweisen die zu durch- suchende Liste schnell gefunden wird. Daneben sollen die Daten alphabetisch sortiert vorgehalten werden, um z.B. regelm¨assig den Kunden

”wichtige Informationen!“ zu- kommen zu lassen.

Die Aufgabe

Es soll sowohl eine Listenstruktur f¨ur die sortierte Ausgabe der Daten als auch ein Hash-Array von Listen implementiert werden. Dabei sollen die Kundendaten nicht doppelt im Speicher gehalten werden, sondern nur die Referenzen auf die Eintr¨age sollen in den zwei erw¨ahnten Ordnungen organisiert werden! Benutzt eine geeignete Hash-Funktion, f¨ur die weitere Suche d¨urft Ihr annehmen, dassNachname, Vorname jeweils eindeutig sind.

Dabei soll bei der Wahl der Datenstruktur zus¨atzlich ber¨ucksichtigt werden, dass das L¨oschen eines Eintrags m¨oglichst effizient implementiert wird.

Insgesamt sollen die folgenden vier Methoden mit geeignet zu definierenden Signa- turen implementiert werden:

reingefallen f¨ugt einen neuen Kunden in die Hash-Struktur sowie in die alphabe- tisch sortierte Liste ein.

gerichtlichAngeordnet l¨oscht einen Eintrag zu einem gegebenen Namen sowohl aus der Hash – Struktur als auch aus der Liste.

abzocken sucht zu einem gegebenen Namen ¨uber die Hash–Liste die dazugeh¨orende Daten heraus und liefert diese als R¨uckgabewert.

(2)

PI 1, WS 2008/09

spammen gibt zeilenweise (nach Nachname sortiert) Vorname Nachname und e-mail Adresse auf den Bildschirm aus.

Zeigt mit geeigneten Testf¨allen, das Eure Methoden die gew¨unschte Funktionalit¨at besitzen.

2

Referenzen

ÄHNLICHE DOKUMENTE

c) Verifizieren Sie die G¨ ultigkeit des Satzes von Gauß f¨ ur eine Integration des Vektorfeldes ¨ uber die Oberfl¨ ache eines (geschlossenen) Zylinders (Radius R, H¨ ohe h),

c) Verifizieren Sie die G¨ ultigkeit des Satzes von Gauß f¨ ur eine Integration des Vektorfeldes ¨ uber die Oberfl¨ ache eines (geschlossenen) Zylinders (Radius R, H¨ ohe h),

Unter Kritik verstehe ich hier, dass die Individuen eine praktische Haltung einnehmen, die insbesondere vermeintliche Gewissheiten und Machtverhälmisse in Frage stellt und sich

¨ Andern Sie nun im Skript aufg02script01.m die Variablen nach eigenem Gutd¨ unken, welche mit einem Kommentar der Form <--- Hier d¨ urfen Sie beschriftet sind und diskutieren

Definition 1.1 Eine Aussage ist ein sprachlicher Satz, der seinem Inhalt entsprechend wahr oder falsch ist. Definition

Bemerkung: Falls m das einzige minimale (maximale) Element einer partialgeordneten Menge M ist, so muss m nicht zwangsweise das kleinste (gr¨oßte)) Element in M sein..

(a) Verwandle das Rechteck ABCD mit Hilfe des Sehnensatzes in ein fl¨ achengleiches Rechteck EF GH mit einer Seitenl¨ ange von c = 5cm.. (b) Verwandle das Rechteck EF GH mit Hilfe

Integrals -atze der Vektor