E&A Prüfungen und Loesungen_Update

Embed Size (px)

Citation preview

1 Prfung am 27.06.1995 ber die im SS 95 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,6,5,4) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Gegeben ist ein sortiertes Feld A[1..n] von n positiven Zahlen. Entwerfen Sie einen mglichst effizienten Algorithmus, der entscheidet, ob A zwei verschiedene Zahlen a und b enthlt, fr die a=3b-7 gilt. Analysieren Sie ihren Algorithmus und zeigen sie seine Korrektheit. Zeigen Sie eine untere Laufzeitschranke fr dieses Problem. (Volle Punkteanzahl nur fr optimale Algorithmen) 2. Gegeben ist eine Menge S von n Punkten in der Ebene, sowie die optimale Triangulierung von S. Entwerfen Sie einen Algorithmus, der die Punktmenge S mit maximal 6 verschiedenen Farben so frbt, da keine zwei durch eine Kante der Triangulierung verbundenen Punkte dieselbe Farbe erhalten. Erklren Sie genau die Grundidee des verwendeten Algorithmus und beschreiben Sie ihn in vollstndigen Stzen. Zeigen Sie die wesentlichen Punkte und Implementationsdetails und beweisen Sie seine Korrektheit. Analysieren Sie Laufzeit und Speicherbedarf. Volle Punkteanzahl nur fr O(n) Algorithmen. 3. Richtig oder falsch? Geben Sie fr falsche Aussagen ein Gegenbeispiel, fr richtige Aussagen einen kurzen Beweis an. (a) Jeder Baum ist planar. (b) Jeder Graph G=(V,E) mit (c) Jeder Graph G=(V,E) mit (d) ist planar. und Maximalgrad drei ist planar. hat. .

Es existiert ein planarer Graph G=(V,E) in dem jeder Knoten Grad (e) In jedem planaren Graphen G=(V,E) existiert ein Knoten mit Grad

4. Erklren Sie eine einfache Methode, wie unter Verwendung bekannter Stringsuchverfahren der Einsatz des Sonderzeichens '*' (Wildcard fr beliebig viele Zeichen) in Suchstrings effizient ermglicht wird. Dabei gilt die Einschrnkung, da nur ein '*' pro Suchstring erlaubt ist. Viel Erfolg!

2

3

4

5

6

7

8

9 Prfung am 12.10.1995 ber die im SS 95 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,6,5,4) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Lsen rekursiver Zeitgleichungen - Geben Sie alle zur Berechnung bentigten Zwischenschritte an. 1. Ein Algorithmus A besitzt eine Laufzeit, die durch die Rekursion beschrieben wird. Ein Algorithmus A' fr dieselbe Aufgabenstellung besitzt eine Laufzeit . Geben sie den grtmglichen Wert von a an, soda Algorithmus A' asymptotisch schneller als A ist. 2. Lsen Sie folgende Rekursion mittels Substitutionsmethode , T(1)=1 2. Schreiben Sie zwei effiziente Algorithmen, die fr einen gegebenen Input den Wert von m[n,n] fr folgende rekursiven Zusammenhnge berechnen ( ):

1.

2. Zeigen Sie die Korrektheit Ihrer Lsungen und analysieren Sie sowohl deren Zeit- als auch Speicherbedarf (Hinweis: Beachten Sie die Initialisierung!). 3. Konvexe Hllen 1. Zeigen Sie die untere Laufzeitschranke zur Berechnung der konvexen Hlle von n Punkten in der Ebene. 2. Erklren und analysieren Sie den Konvexen-Hllen-Algorithmus von Graham. Erlutern Sie insbesonders die zugrundeliegende Technik sowohl des Algorithmus' als auch seiner Analyse. 4. Gegeben ist eine Menge von n achsenparallelen Rechtecken in der Ebene. Gesucht ist die Flche des Durchschnittes aller Rechtecke in mglichst schneller Zeit. Zeigen Sie die zum Entwerfen eines effizienten Algorithmus notwendigen Eigenschaften (Hinweis: Wie sieht der Durchschnitt geometrisch aus?) und geben Sie den entsprechenden Algorithmus an.

10

11

12

13

14

15 Prfung am 30.11.1995 ber die im SS 95 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (4,6,5,5) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. (Graphentheorie) Gegeben ist ein kantengewichteter Graph G=(V,E). Die Gewichte sind ganzzahlig (knnen aber auch negativ sein!). Gesucht ist eine Teil-Kantenmenge , die alle Knoten verbindet (d.h. der Graph (V,E') ist zusammenhngend) und ein mglichst kleines Gesamtgewicht hat. Erklren Sie, wie eine solche optimale Lsung aussieht, und in welcher Zeit sie berechnet werden kann. (Hinweis: Sie knnen dazu gegebenenfalls in der Vorlesung verwendete Algorithmen als Unterprogramm aufrufen.) 2. (Geometrie) Gegeben sind n Punkte in der Ebene. Entwerfen Sie eine Datenstruktur bzw. einen Algorithmus, der folgende Aufgaben durchfhrt: 1. Testen der gesamten Punktmenge auf Degeneriertheit. (Eine Punktmenge ist degeneriert, wenn es zumindest drei Punkte der Menge gibt, die kollinear sind. Drei Punkte sind kollinear, wenn sie auf einer Geraden liegen!) 2. Unter der Voraussetzung, da die Punktmenge nicht degeneriert ist, soll fr einen zustzlichen Punkt schnell getestet werden, ob dieser zu Kollinearitten fhrt. Beide Probleme sollen mit linearem Speicher gelst werde. Hinweis: volle Punkteanzahl gibt es nur, wenn a) in gelst wird. Zeit und b) in Zeit

3. (Parallele Algorithmen) Erklren Sie die in der Vorlesung besprochene Schaltung zur parallelen Berechnung der Prfixsummen von n Integer Zahlen ( ). Welche Erweiterungen mssen an der Schaltung vorgenommen werden, damit eine Folge von solchen Berechnungen effizient durchgefhrt werden kann (Wellenberechnung!)? Gefordert ist, da nach der Anlaufzeit pro Takt ein Ergebnis geliefert wird. Geben Sie die Schaltung und insbesondere den Bedarf an Gattern an. 4. (Komplexittstheorie) 1. Definieren Sie die Begriffe Optimierungsproblem, Entscheidungsproblem, Komplexitetsstatus und Reduzierbarkeit sowie die Problemklassen P und NP . Geben Sie den Zusammenhang zwischen diesen Begriffen und deren Bedeutung innerhalb der Komplexittstheorie an. 2. Erklren Sie das Problem Hamiltonscher Kreis und seinen Komplexittsstatus. Zeigen Sie den Komplexittsstatus des Problems, wenn man einen gerichteten Graphen zugrundelegt.

16

17

18

19

20

Prfung am 01.02.1996 ber die im SS 95 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (4,5,6,5) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. (Plane-Sweep-Technik) Erklren Sie, warum der einfache Schnitt-Detektor fr Kreisscheiben (Plane-sweep Technik) fr Kreise nicht korrekt funktioniert. Mit welcher einfachen Idee kann das fr Liniensegmente verwendete Verfahren auch zur Berechnung aller Schnitte von Kreisen verwendet werden? (Idee beschreiben, kein Programmcode!) 2. (Graphentheorie) 1. Definieren Sie die Begriffe Graphisomorphismus, planarer Graph, Kuratowski Graph. 2. Zeigen oder widerlegen Sie: Folgende Graphen sind planar (Beweis!):

3. (Geometrie, Komplexittstheorie) 1. Zeigen Sie: In einem konvexen Viereck ist die Gesamtlnge der beiden Diagonalen immer grer gleich der Gesamtlnge zweier gegenberliegender Seiten. 2. Zeigen Sie: Die optimale Rundreise (TSP) fr eine ebene Punktmenge in allgemeiner Lage kreuzt sich nicht selbst. 3. Entwerfen Sie einen mglichst schnellen Algorithmus fr das TSP auf konvexen ebenen Punktmengen (d.h. alle Punkte liegen auf der KH der Punktmenge). Hinweis: Die Aufgaben (a) bis (c) sind bewut in dieser Reihenfolge angegeben! 4. (Nherungsalgorithmen) 1. Definieren Sie die Begriffe Heuristik, Approximationsalgorithmus, relativer Fehler, polynomiales Approximationsschema. 2. Definieren Sie die Optimierungsvariante des Rucksackproblems und geben Sie ein polynomiales Approximationsschema dafr an. Welche Laufzeit und welchen relativen Fehler hat dieser Algorithmus (ohne Beweis)?

21

22

23

24

25

Prfung am 14.03.1996 ber die im SS 95 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,5,4,6) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. (Randomisierte Suchbume) Definieren Sie die Datenstruktur Randomisierte Suchbume und den damit verbundenen Begriff Prioritten. Wozu werden Randomisierte Suchbume verwendet? Wie werden die entsprechenden Operationen implementiert und welchen Aufwand bentigt man dafr? (Hinweis: E[r(x)] und brauchen nicht bewiesen werden.) 2. (Matrizen-Ketten-Multiplikation) Gegeben sind 4 Matrizen der Gre , , , . Berechnen Sie effizient die

optimale Klammerung zur Berechnung des Matrizenproduktes (wobei zur Multiplikation zweier Matrizen die Schulmethode verwendet wird). Erklren Sie kurz die verwendete Methode und geben Sie alle Zwischenschritte an. Vergleichen sie den Aufwand der optimalen Lsung mit dem Aufwand ohne Klammerung. 3. (Parallele Algorithmen, Geometrie) Zeigen oder widerlegen Sie: Es gibt einen Prozessoren, der in parallelen Algorithmus mit fr n Punkte in der Ebene berechnet. Zeit die konvexe Hlle

4. (Graphentheorie) Der Durchmesser d(G) eines ungewichteten zusammenhngenden Graphen G ist der maximale Abstand zweier Knoten aus G: , mit d(u,v) ist die Lnge (=Anzahl Kanten) des krzesten Weges von u nach v. Folgender Algorithmus berechnet den Durchmesser d(B) fr den Speziallfall eines Baumes B: Nimm einen beliebigen Knoten . Bestimme einen Knoten der

von x maximalen Abstand hat. Bestimme einen Knoten der von y maximalen Abstand hat. Dann ist der Abstand von y nach z der Durchmesser des Baumes. Zeigen Sie die Korrektheit dieses Algorithmus' (Hinweis: zeigen Sie zuerst, da y sicher Endpunkt eines Pfades maximaler Lnge ist).

26

27

28 Prfung am 04.06.1996 ber die im SS 96 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 100 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,4,6,5) Punkte. Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Graphentheorie: 1. Gegeben ist der gerichtete Graph G mit folgender Adjazenzliste: 1 2, 6, 8; 2 1, 9; 3 5, 6; 4 1, 2, 3, 5, 9; 5 1, 7; 6 5, 7; 7 1, 2, 3; 8 4; 9 3; Geben Sie fr G die Knotenreihenfolge fr Breitensuche: und Tiefensuche: an, wenn der Knoten 1 der Startknoten ist. 2. Gegeben ist der Graph G:

Kreuzen Sie an, welche der folgenden Graphen zum Graph G isomorph sind:

3. Kreuzen Sie an, welche der folgenden Graphen planar sind:

2. Ein Algorithmus A besitzt eine Laufzeit, die durch die Rekursion beschrieben wird. Ein Algorithmus A' fr dieselbe Aufgabenstellung besitzt eine Laufzeit . Geben Sie den

29

grten Wert von a an, soda Algorithmus A' asymptotisch schneller als A ist: 3. Minimaler Spannbaum: 1. Definieren Sie den Begriff ``Minimaler Spannbaum''. 2. Zur Konstruktion des MSB eines Graphen G wurden in der Vorlesung zwei Algorithmen besprochen. Erklren Sie die Idee zur Auswahl ``guter'' Kanten, die beiden Algorithmen zugrundeliegt, und beweisen Sie die Korrektheit dieser Idee. 3. Sie haben eine Menge S von n Punkten im gegeben, sowie eine Funktion d(x,y), die in konstanter Zeit fr zwei Punkte berechnet. Gesucht ist der MSB fr S. deren Abstand

Whlen Sie das fr dieses Problem besser geeignete Verfahren, und begrnden Sie Ihre Wahl, oder zeigen Sie, da beide Verfahren gleich gut geeignet sind. 4. Stringsuchverfahren: 1. Erklren Sie die beiden Stringsuch-Methoden a) Knuth-Morris-Pratt sowie b) Quicksearch. Erlutern Sie insbesonders den Unterschied der verwendeten Verschiebefunktionen. 2. Erlutern Sie Vor- und Nachteile der beiden Verfahren, wenn Sie in einem Text auf einem sequentiellen Datentrger (z.B. Magnetband) suchen. Welches Verfahren ist dafr besser geeignet? Viel Erfolg!

30

31

32

33

34

Prfung am 08.11.1996 ber die im SS 96 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (4,6,5,5) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Definieren Sie die Begriffe konvexe Hlle, Durchmesser einer Punktmenge und Weite (=Breite) eines Polygons. Erklren Sie den Algorithmus zur Konstruktion der konvexen Hlle einer Punkt-menge mittels iterativen Einfgens. Erlutern Sie ausfhrlich die Idee hinter dem Algorithmus und die dazu notwendigen Schritte (ohne Analyse). 2. Sei A[i,j] ein zweidimensionales Feld von positiven Gleitkommazahlen mit n Zeilen und 2n Spalten. Das Element A[1,1] steht dabei ``links oben''. Eine Teilmenge S der Eintrge in A heit Stiege, wenn (1) S aus jeder Zeile von A genau ein Element enthlt und (2) der Eintrag aus Zeile i links vom Eintrag in Zeile i1 steht, . Die S entsprechenden Felder laufen also in A von der untersten zur obersten Zeile ``stiegenfrmig'' nach rechts. Siehe Bild:

Der Wert einer Stiege sei die Summe Ihrer Elemente. Gesucht ist die Stiege mit maximalem Wert. Entwerfen Sie einen Algorithmus, der dieses Problem effizient lst (in PseudoCode oder natrlicher Sprache). Verwenden Sie dazu das Paradigma ``Dynamisches Programmieren''. Erklren Sie genau die Bedeutung des verwendeten Feldes und fhren Sie eine Worstcase-Analyse fr die Laufzeit Ihres Algorithmus durch. 3. Themenbereich: Komplexitt von Algorithmen. Kreuzen Sie korrekte Aussagen an. Sie knnen voraussetzen.

Alle Probleme in NP haben zumindest eine exponentielle untere Laufzeitschranke. Alle NP-vollstndigen Probleme besitzen dieselbe asymptotische Laufzeit.

35

Die Probleme TSP (Travellig Salesman Problem) und MSB (Minimaler Spannbaum) sind beide in NP. Entscheidungsprobleme knnen zum Lsen zugehriger Optimierungsprobleme verwendet werden. Optimierungsprobleme knnen zum Lsen zugehriger Entscheidungsprobleme verwendet werden. Kann man ein neues Problem aus der Klasse NP auf ein NP-vollstndiges Problem reduzieren, so beweist dies die NP-Vollstndigkeit des neuen Problems. 3-SAT ist NP-vollstndig, 2-SAT hingegen kann in polynomialer Zeit gelst werden. Die Klasse NP enthlt alle mathematisch wohlformulierbaren Probleme. Das geometrische Rundreiseproblem kann in polynomialer Zeit mit einem relativen Fehler 1 approximiert werden. NP ist die Abkrzung fr ``Nicht Polynomial''. Hinweis: Sie mssen Ihre Aussage nicht begrnden. Flschlich angekreuzte Markierungen knnen Sie korrigieren, indem Sie den Punkt voll ausmalen. Er gilt dann als nicht angekreuzt. 4. Themenbereich Graphentheorie. Kreuzen Sie korrekte Aussagen an. Jeder zusammenhngende Graph mit n Knoten hat mindestens n-1 Kanten. Jeder planare Graph mit n Knoten hat mindestens n-1 Kanten. Jeder bipartite Graph enthlt ausschlielich gerade Zyklen. Jeder planare bipartite Graph enthlt eine gerade Anzahl von Knoten. Jeder planare bipartite Graph enthlt eine gerade Anzahl von Kanten. Ein Graph mit n Knoten, der regulr vom Grad n-1 ist, ist nicht planar. Jeder Graph besitzt einen planaren Teilgraphen. Jeder Graph ist 6-frbbar. Jeder Graph mit 8 Kanten ist planar. Jeder Graph mit Kanten ist planar.

Triangulierungen von Punkten in der Ebene sind immer planare Graphen. Hinweis: Sie mssen Ihre Aussage nicht begrnden. Flschlich angekreuzte Markierungen knnen Sie korrigieren, indem Sie den Punkt voll ausmalen. Er gilt dann als nicht angekreuzt.

36

37

38

39

Prfung am 28.01.1997 ber die im SS 96 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,5,5,5) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Beschreiben Sie das String-Matching Verfahren nach Knuth-Morris-Pratt. Erlutern Sie insbesondere Aufgabenstellung, Algorithmus, verwendete Verschiebefunktion und Zeitanalyse genau! Wie mu der Algorithmus angepat werden, um das Wildcard '?' (genau ein beliebiges Zeichen) im Suchstring verwenden zu knnen? 2. Erklren Sie, weshalb der einfache Schnitt-Detektor fr Kreisscheiben (Plane-sweep Technik) fr Kreise nicht korrekt funktioniert. Mit welcher einfachen Idee kann das fr Liniensegmente verwendete Verfahren auch zur Berechnung aller Schnitte von Kreisen verwendet werden? (Idee beschreiben, kein Programmcode!) 3. Konstruieren Sie einen parallelen Algorithmus, der mit Prozessoren (Ver-

gleichsgattern) das Minimum von n Zahlen (unsortiert) in Zeit bestimmt. 4. Gegeben ist ein Graph G=(V,E) mit n=|V| Knoten und m=|E| Kanten. Zeigen Sie, da es keinen Algorithmus mit Laufzeit O(nm) geben kann, der alle Kreise der Lnge 4 in G auflistet.

40

41

42

43

Prfung am 11.03.1997 ber die im SS 96 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (4,6,4,6) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Definieren Sie das Teilsummenproblem. Zeigen Sie bestmgliche obere und untere Laufzeitschranken fr dieses Problem, und begrnden Sie Ihre Aussagen. 2. Randomisierte Suchbume 1. Definieren Sie das Wrterbuchproblem, sowie die Datenstruktur Randomisierter Suchbaum. 2. Erklren Sie ausfhrlich die zugrundeliegenden Operationen des randomisierten Suchbaumes, und zeigen Sie, mit welchen Laufzeiten damit das Wrterbuchproblem gelst werden kann. 3. Beweisen oder widerlegen Sie: Sind die Werte und Prioritten des randomisierten Suchbaumes paarweise verschieden (d.h. alle Werte bzw. Prioritten sind verschieden), so ist der randomisierte Suchbaum eindeutig. 3. Beschreiben Sie eine deterministische Methode (Verfahren nach Graham) zur Berechnung der konvexen Hlle von n Punkten in der Ebene. Analysieren Sie das genaue Laufzeitverhalten dieses Verfahrens. 4. Graphentheorie 1. Geben Sie einen ungerichteten, ungewichteten, kreisfreien, zusammenhngenden Graphen mit 8 Knoten an, und kennzeichnen Sie einen Startknoten, soda sowohl Breitensuche als auch Tiefensuche alle Knoten in derselben Reihenfolge besuchen! 2. Wieviele solcher ungerichteten, ungewichteten, kreisfreien, zusammenhngenden Graphen mit n Knoten, von denen einer als Startknoten gekennzeichnet ist, gibt es, soda sowohl Breitensuche als auch Tiefensuche alle Knoten in derselben Reihenfolge besuchen? Beweisen Sie Ihre Aussage!

44

45

46

Prfung am 15.05.1997 ber die im SS 96 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (4,5,5,6) Punkte. Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Definieren Sie die Begriffe Heuristik, Approximationsalgorithmus, relativer Fehler, polynomiales Approximationsschema. Kann fr jede Problemstellung ein polynomiales Approximationsschema gefunden werden? Welche Vor- und Nachteile besitzt ein polynomiales Approximationsschema gegenber einer Approximation mit einer sehr kleinen, aber festen Konstanten 2. Gegeben sind 4 Matrizen der Gre , ? , ,

. Berechnen Sie effizient die optimale Klammerung zur

(wobei zur Multiplikation Berechnung des Matrizenproduktes zweier Matrizen die Schulmethode verwendet wird). Erklren Sie kurz die verwendete Methode und geben Sie alle Zwischenschritte an. Vergleichen Sie den Aufwand der optimalen Lsung mit dem Aufwand ohne Klammerung. 3. Gegeben ist ein kantengewichteter Graph G=(V,E). Die Gewichte sind ganzzahlig, knnen aber auch negativ sein! Gesucht ist eine kreislose Kantenteilmenge (d.h. ein kreisloser Teilgraph (V,E')), die ein mglichst groes Gesamtgewicht hat. Erklren Sie, wie eine solche optimale Lsung aussieht, und in welcher Zeit sie berechnet werden kann. Hinweis: Sie knnen dazu gegebenenfalls in der Vorlesung verwendete Algorithmen als Unterprogramm aufrufen. 4. Exponentation , , mit mglichst wenigen Multiplikationen 1. Sie sollen , berechnen. Beschreiben Sie dazu das in der Vorlesung besprochene, auf der Binrdarstellung von n beruhende, Verfahren, und geben Sie den Algorithmus an. 2. Ermitteln Sie mit diesem Verfahren die Anzahl notwendiger Multiplikationen zur Berechnung von . 3. Modifizieren Sie nun obige Methode, soda es auf Basis 3 arbeitet, d.h. n wird als Zahl zur Basis 3 dargestellt. Erklren Sie die dazu notwendigen nderungen und geben Sie den neuen Algorithmus an. Welche Laufzeit besitzt dieser Algorithmus? 4. Wieviele Multiplikationen sind mit diesem modifizierten Verfahren zur Berechnung von notwendig? (Hilfestellung: )

47

48

49

50

Name: Matr.Nr.: Prfung am 26.06.1997 ber die im SS 97 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,5,4,6) Punkte.

Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Optimale Triangulierungen 1. Definieren Sie das Problem der optimalen Dreieckszerlegung. 2. Zeigen Sie eine einfache untere Schranke fr die Anzahl verschiedener Dreieckszerlegungen eines konvexen Polygons mit n Ecken. 3. Erklren Sie den Algorithmus zur Berechnung der optimalen Dreieckszerlegung fr ein konvexes Polygon mit n Ecken. 2. NP-vollstndige Probleme: Kreuzen Sie korrekte Aussagen an. Jedes NP-vollstndige Problem A ist auf jedes NP-vollstndige Problem A' polynomial reduzierbar. NP-vollstndige Probleme sind die schwersten Probleme aller Probleme in NP. NP steht fr 'nondeterministic-polynomial'. Ist ein Entscheidungsproblem NP-vollstndig, dann auch das zugehrige Optimierungsproblem. Kann ein Optimierungsproblem in polynomialer Zeit gelst werden, dann auch das zugehrige Entscheidungsproblem. Die Berechnung der Konvexen Hlle von n Punkten in der Ebene ist in NP. 2SAT und 3SAT sind beide in NP. Alle wohlformulierten Probleme sind entweder in P oder in NP. Fr NP-vollstndige Probleme gibt es eine exponentielle untere Laufzeitschranke. Beim Reduktionsbeweis wird das zu klassifizierende Problem auf ein bereits als NP-vollstndig bekanntes Problem reduziert. Hinweis: Sie mssen Ihre Aussage nicht begrnden. Flschlich angekreuzte Markierungen knnen Sie korrigieren, indem Sie den Punkt voll ausmalen. Er gilt dann als nicht angekreuzt. 3. Gegeben ist ein zusammenhngender Graph mit n Knoten und m Kanten. Entwerfen Sie einen Algorithmus, der mglichst effizient feststellt, ob dieser Graph bipartit ist.

51 Zeigen Sie die Korrektheit Ihrer Lsung und analysieren Sie den Zeit- und Speicherbedarf. 4. Beschreiben Sie kurz den Algorithmus von Dijkstra zur Berechnung der krzesten Wege in gewichteten, zusammenhngenden Graphen G=(V,E). 1. Wie verhlt sich der Algorithmus, wenn auch negative Kantengewichte erlaubt sind? Beweisen Sie entweder seine Korrektheit, oder geben Sie ein Gegenbeispiel an. 2. Welche Modifizierungen mssen am Algorithmus vorgenommen werden, wenn das Gewicht eines Pfades nicht die Summe, sondern das Produkt seiner Kantengewichte darstellt? Dabei gilt, da das Gewicht einer Kante immer > 1 ist. Beweisen Sie Ihre Aussage!

52

53

54

Prfung am 16.10.1997 ber die im SS 97 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (5,4,5,6) Punkte. Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Beschreiben Sie die beiden String-Matching Verfahren nach 'Knuth, Morris, Pratt' sowie 'Karp-Rabin'. Vergleichen Sie die beiden Methoden und erklren Sie jeweils Vor- und Nachteile. Welches der Verfahren ist besser geeignet, die Wildcards '?' (ein beliebiges Zeichen) und '*' (eine unbestimmte Anzahl beliebiger Zeichen) zu behandeln? Begrnden Sie Ihre Aussagen! 2. Erklren und analysieren Sie die in der Vorlesung besprochene Schaltung zur parallelen Berechnung der Prfixsummen von n Integer Zahlen . 3. Gegeben ist eine Folge von Eckpunkten in der Ebene, die ein simples (nicht selbstkreuzendes) Polygon P beschreiben. Geben Sie einen mglichst schnellen Algorithmus an, der den Flcheninhalt von P bestimmt. Zeigen Sie die Korrektheit Ihrer Lsung und Analysieren Sie den Zeit- und Speicherbedarf. 4. Beschreiben Sie kurz den Algorithmus von Dijkstra zur Berechnung der krzesten Wege in gewichteten, zusammenhngenden Graphen G=(V,E). 1. Wie verhlt sich der Algorithmus, wenn auch negative Kantengewichte erlaubt sind? Beweisen Sie entweder seine Korrektheit, oder geben Sie ein Gegenbeispiel an. 2. Welche Modifizierungen mssen am Algorithmus vorgenommen werden, wenn das Gewicht eines Pfades nicht die Summe, sondern das Produkt seiner Kantengewichte darstellt? Dabei gilt, da das Gewicht einer Kante immer > 1 ist. Beweisen Sie Ihre Aussage!

55

56

57 Prfung am 20.11.1997 ber die im SS 97 abgehaltene Vorlesung. Es drfen keine schriftlichen Unterlagen, Taschenrechner, PCs etc. verwendet werden. Zeit: 90 Min. Punkteschlssel: Fr Beispiel (1,2,3,4) jeweils (4,5,5,6) Punkte. Notenschlssel: Sehr gut = 17 -20, Gut = 15 -17, Befriedigend = 13-15, Gengend = 10 12 . 1. Geben Sie einen effizienten Algorithmus zur Multiplikation langer Zahlen an (Przisionsarithmetik mit n dezimalen Stellen je Zahl). Erklren Sie den Algorithmus, und analysieren Sie dessen Laufzeitbedarf. 2. Optimale Triangulierungen 1. Definieren Sie das Problem der optimalen Dreieckszerlegung. 2. Zeigen Sie eine einfache untere Schranke fr die Anzahl verschiedener Dreieckszerlegungen eines konvexen Polygons mit n Ecken. 3. Erklren Sie den Algorithmus zur Berechnung der optimalen Dreieckszerlegung fr ein konvexes Polygon mit n Ecken. 3. Gegeben ist ein zusammenhngender Graph mit n Knoten und m Kanten. Entwerfen Sie einen Algorithmus, der mglichst effizient feststellt, ob dieser Graph bipartit ist. Zeigen Sie die Korrektheit Ihrer Lsung, und analysieren Sie den Zeit- und Speicherbedarf. 4. Gegeben ist eine Folge von Eckpunkten in der Ebene, die ein simples (nicht selbstkreuzendes) Polygon P beschreiben. Geben Sie einen mglichst schnellen Algorithmus an, der den Flcheninhalt von P bestimmt. Zeigen Sie die Korrektheit Ihrer Lsung und analysieren Sie den Zeit- und Speicherbedarf.

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129