Universität Mannheim
Lehrstuhl für Praktische Informatik IV
Prof. Dr. W. Effelsberg
R. Lienhart 416
S. Pfeiffer 417


Bitte unbedingt beachten:

Die Programme müssen in ANSI-C geschrieben werden.
Sie müssen im Pool mit dem GNU C-Compiler gcc -Wall -ansi -pedantic fehlerfrei übersetzbar und lauffähig sein.
Wenn mehrere Dateien mit der abox abgegeben werden sollen, müssen sie vorher mit dem Befehl tar zu einer Datei zusammengebunden werden.

Übungsblatt 5

Abgabe: 14.12.95 um 12:00 Uhr

Aufgabe 1 [30 Punkte]

  1. Implementieren Sie die Binäre Suche. Die Suchelemente sind diesmal aber keine Zahlen, sondern Zeichenketten (Strings). In C werden Zeichenketten über Zeiger verwaltet. Sie müssen also die Zeichenketten über eine Array aus Zeigern vom Typ char* verwalten. Folgende Funktionen müssen Sie schreiben:

    Schreiben Sie ein Programm, das die Strings mit readStringsAndSort einliest und mit writeSortedStrings wieder ausgibt. (Programm da511-???.c )

  2. Schreiben Sie auch ein Programm, das die zu sortierenden Daten mit readStringsandSort einliest, anschlie&suml;end die Suchwöter mittels readStrings einliest und im Array mittels binaereSuche sucht. Das Suchergebnis auf dem Bildschirm ausgegeben werden. (Programm 512-???.c)

  3. Implementieren Sie die Funktion
    gemäß der Interpolationsuche. (Programm 513-???.c )

  4. Vergleichen Sie das Laufzeitverhalten der Suchverfahren aus 1. und 2. bei einer großen Anzahl von Wörtern (>1000).

Aufgabe 2 [20 Punkte]

Gegeben sei die List L = 1,2,3,4,5,6,7 und die Zugriffsfolge s mit 21 Zugriffen: Vergleichen Sie das Verhalten der MF- und T-Regel für diese Zugriffsfolge s, indem Sie das folgende Schema ergänzen:


Last modified: Tue Dec 5 15:58:45 MET 1995