Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:

Ähnliche Präsentationen


Präsentation zum Thema: "Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:"—  Präsentation transkript:

1 Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:

2 Programmierung 1 - Repetitorium Montag, den Kapitel 10 Fallstudien

3 Programmierung 1 - Repetitorium 10.1 Binäre Suche Nichtleere, endliche Mengen X werden rekursiv durch Tripel (L,x,R) wie folgt dargestellt : 1.Darstellungseigenschaft : X = L { x } R 2.Ordnungseigenschaft : y L z R : y < x < z 3.Gleichgewichtseigenschaft : L und R sind ungefähr gleich groß. Für Vergleiche gilt : 1.Wenn y = x, dann y X. 2.Wenn y < x, dann y X y L 3.Wenn x < y, dann y X y R Die Mengen L und R sind nur noch etwa halb so gross wie X. datatype stree = B | N of stree * int * stree Ein S-Baum ist ein Wert des Typs stree. Ein Suchbaum ist ein S-Baum, dessen Infixprojektion eine aufsteigend sortierte Liste ohne Doppelauftreten ist.

4 Programmierung 1 - Repetitorium 10.1 Binäre Suche datatype color = R | B datatype ctree = E | N of color * ctree * int * ctree Ein C-Baum ist ein Wert des Typs ctree. Ein maximaler Pfad eines Baums ist ein Pfad von der Wurzel zu einem Blatt. Ein Rot-Schwarz-Baum ist ein C-Baum, der rot- und schwarz-balanciert ist. Ein C-Baum heißt rot-balanciert, wenn alle seine Pfade keine zwei aufeinanderfolgende rote Knoten enthalten. Ein C-Baum heißt schwarz-balanciert, wenn seine maximalen Pfade alle die gleiche Anzahl schwarzer Knoten enthalten. Bei der Einfügeprozedur eines Rot-Schwarz-Baums müssen evtl. auftretende Konflikte durch Rotationsregeln behoben werden.

5 Programmierung 1 - Repetitorium 10.2 Große Zahlen Seien B, n mit B 2. Es existiert zu jeder Zahl x { 0,..., B n+1 – 1 } eine eindeutig bestimmte Zahl a 0,..., a n { 0,..., B – 1 } mit x = a n * B n a 0 * B 0 Die Zahl 0 bis B – 1 bezeichnet man als die Ziffer der Zahldarstellung zur Basis B. Wir realisieren große natürliche Zahlen als Liste von Ziffern : type bignat = int list Zahldarstellung a n... a 0 wird als a 0... a n in eine Liste gespeichert, um die Rekursion mit der niedrigsten Stelle zu beginnen. Es gilt a n 0 (keine führende 0). 1.Die leere Liste repräsentiert die Null. 2.Die Listenrepräsentation zweier großer Zahlen sind gleich genau dann, wenn sie dieselbe Zahl darstellen. 3.Wir müssen Listenrepräsentation unterschiedlicher Länge addieren.

6 Programmierung 1 - Repetitorium 10.3 Das Damenproblem Problemstellung : n Damen sollen so auf ein n x n – Schachbrett aufgestellt werden, dass sie sich nicht gegenseitig schlagen können. Repräsentation der Lösung : Da jede Lösung in jede Spalte genau einen Dame setzt, können wir die Koordinatenpaare einer Lösung nach der Spalte ordnen (1,y 1 ),..., (n,y n ) und kompakt durch die Liste [ y 1,..., y n ]. Lösungsstrategie : Durch den Aufbau von Teillösungen und das systematische Probieren werden die Damen der Reihe nach platziert und bei Konflikten wieder zurückgesetzt. Transitionsregeln geben die Bedingungen für den Übergang von einem Zustand in seinen möglichen Folgezustand an.


Herunterladen ppt "Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:"

Ähnliche Präsentationen


Google-Anzeigen