• Keine Ergebnisse gefunden

Wortliste (Punkte: maximal 24; Teilaufgaben: a=11, b=11, c=2)

N/A
N/A
Protected

Academic year: 2022

Aktie "Wortliste (Punkte: maximal 24; Teilaufgaben: a=11, b=11, c=2)"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Übungen zu Praktische Informatik: Datenstrukturen SS 2005 Übung 1

Name: Tutor:

Matrikelnummer: Punkte:

Gruppe: Abgabe am: Di, 05. 04. 2005 12:00

Wortliste (Punkte: maximal 24; Teilaufgaben: a=11, b=11, c=2)

Implementieren Sie eine einfach verkettete, lineare Liste, die die Häufigkeit der eingefügten Wörter zählt und statistische Auswertungen ermöglicht. Es soll nicht zwischen Groß- und Kleinschreibung unterschieden werden.

Achten Sie darauf, dass nur die angegebenen Methoden public sind, alles andere soll private deklariert sein (oder zumindest gut begründet wenn nicht).

public class WordList { public WordList() { … }

public void insert(String word) { … } // Get frequency of word

public int getFrequency(String word) { … } // Number of different words

public int nOfDifferentWords() { … } // Mean frequency of equal words public double meanWordCount() { … }

// Get all words with specified frequency public String[] getWords(int frequency) { … }

// Get all words starting with the specified prefix

public String[] getWordsStartingWith(String prefix) { … } public void printList() { … }

}

Beispiel: Einlesen von "To be or not to be" soll beim Aufruf der Methode printList in etwa folgende (Test-)Ausgabe liefern (die Reihenfolge der Wörter ist nicht relevant):

1 NOT (1 times) 2 BE (2 times) 3 OR (1 times) 4 TO (2 times)

Die Methode nOfDifferentWords liefert in diesem Beispiel das Ergebnis 4, meanWordCount liefert 1.5 (versuchen Sie bei der Implementierung ohne Schleifen auszukommen).

a) Implementieren Sie eine „einfache“ Wortliste (in der Klasse WordList0) laut obiger Spezifikation.

b) Implementieren Sie WordList1 als Erweiterung von WordList0, als eine

„selbstorganisierende“ Wortliste. Implementieren Sie dazu die Methoden:

public WordNode find(String word): zum Suchen eines Elements mit gegebenem Wort, und Verschieben an den Anfang. Wird das Element nicht gefunden, soll null zurückgegeben werden.

public WordNode remove(String word): zum Löschen eines Elements mit gegebenem Wort.

• passen Sie public void insert (String word) an, damit das zuletzt eingefügte Element immer am Anfang steht.

Hinweis: Sie können in remove und insert die Methode find verwenden (Sonderfälle beachten!)

c) Testen Sie Funktionalität und Effizienz Ihrer Lösung

Referenzen

ÄHNLICHE DOKUMENTE

i) Dr¨ ucken Sie die drei bekannten Tatsachen mittels dieser Aussagen und logischer Verkn¨ upfungen aus.. ii) Entscheiden Sie mit Hilfe einer Wahrheitstafel,

Damit ist g auch nicht surjektiv.. Also ist h

Die Frage, ob sich aus drei Seitenlänge a, b, c ein (reelles) Dreieck konstruieren lässt, wird durch die so genannte Dreiecksungleichung beantwortet.. In Worten lautet

Wird diese Methode nur innerhalb der Klasse verwendet, sollte diese auch anstatt public als private definiert

lih selbst gezeigt werden, so lange bis nur noh Axiome oder Prämissen

Berechnen Sie weiter f¨ ur jede Iterierte des Jacobi- und Gauß-Seidel-Verfahrens den Fehler zur exakten L¨ osung des Poisson Problems (zum Beispiel unter Verwendung der

Übungsblatt zur Vorlesung SS 2017.. Theoretische Physik

[r]