• Keine Ergebnisse gefunden

Algorithmen und Datenstrukturen Sommersemester 2012

N/A
N/A
Protected

Academic year: 2022

Aktie "Algorithmen und Datenstrukturen Sommersemester 2012"

Copied!
94
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

. . . . . .

Algorithmen und Datenstrukturen Sommersemester 2012

Steffen Reith

Steffen.Reith@hs-rm.de

Hochschule RheinMain

28. M ¨arz 2012

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 1 / 24

(2)

. . . . . .

Termine

Vorlesung: Donnerstag 815 - 945 im H ¨orsaal B002 Praktika:

Mo 1415 - 1545 Gruppe A Kaiser C413 Mo 1600 - 1730 Gruppe B Kaiser C237 Di 1000 - 1130 Gruppe C Werntges C213 Di 1145 - 1315 Gruppe D Werntges C213 Mi 1600 - 1730 Gruppe E Reith C213 Do 1000 - 1130 Gruppe F Reith C213 Do 1145 - 1315 Gruppe G Reith C213 Fr 0815 - 0945 Gruppe H Moldavskyy C213 Fr 1000 - 1130 Gruppe I Moldavskyy C213 Fr 1145 - 1315 Gruppe J Moldavskyy C213

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 2 / 24

(3)

. . . . . .

Uber den Dozenten ¨

Prof. Dr. Steffen Reith, geboren 1968, verheiratet

Seit Sommersemester 2006 an der Hochschule RheinMain Vorher t ¨atig als Softwareentwickler f ¨ur kryptographische und mathematische Algorithmen f ¨ur tief eingebettete System in KFZs.

Spezialgebiete: Komplexit ¨atstheorie, Logik in der Informatik und Kryptographie

Bachelorarbeiten: z.B. Kryptographie, (parallele) Algorithmen und theoretische Informatik

EMail:

Steffen.Reith@hs-rm.de B ¨uro:

Raum C202

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 3 / 24

(4)

. . . . . .

Uber den Dozenten ¨

Prof. Dr. Steffen Reith, geboren 1968, verheiratet

Seit Sommersemester 2006 an der Hochschule RheinMain Vorher t ¨atig als Softwareentwickler f ¨ur kryptographische und mathematische Algorithmen f ¨ur tief eingebettete System in KFZs.

Spezialgebiete: Komplexit ¨atstheorie, Logik in der Informatik und Kryptographie

Bachelorarbeiten: z.B. Kryptographie, (parallele) Algorithmen und theoretische Informatik

EMail:

Steffen.Reith@hs-rm.de B ¨uro:

Raum C202

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 3 / 24

(5)

. . . . . .

Uber den Dozenten ¨

Prof. Dr. Steffen Reith, geboren 1968, verheiratet

Seit Sommersemester 2006 an der Hochschule RheinMain Vorher t ¨atig als Softwareentwickler f ¨ur kryptographische und mathematische Algorithmen f ¨ur tief eingebettete System in KFZs.

Spezialgebiete: Komplexit ¨atstheorie, Logik in der Informatik und Kryptographie

Bachelorarbeiten: z.B. Kryptographie, (parallele) Algorithmen und theoretische Informatik

EMail:

Steffen.Reith@hs-rm.de B ¨uro:

Raum C202

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 3 / 24

(6)

. . . . . .

Uber den Dozenten ¨

Prof. Dr. Steffen Reith, geboren 1968, verheiratet

Seit Sommersemester 2006 an der Hochschule RheinMain Vorher t ¨atig als Softwareentwickler f ¨ur kryptographische und mathematische Algorithmen f ¨ur tief eingebettete System in KFZs.

Spezialgebiete: Komplexit ¨atstheorie, Logik in der Informatik und Kryptographie

Bachelorarbeiten: z.B. Kryptographie, (parallele) Algorithmen und theoretische Informatik

EMail:

Steffen.Reith@hs-rm.de B ¨uro:

Raum C202

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 3 / 24

(7)

. . . . . .

Uber den Dozenten ¨

Prof. Dr. Steffen Reith, geboren 1968, verheiratet

Seit Sommersemester 2006 an der Hochschule RheinMain Vorher t ¨atig als Softwareentwickler f ¨ur kryptographische und mathematische Algorithmen f ¨ur tief eingebettete System in KFZs.

Spezialgebiete: Komplexit ¨atstheorie, Logik in der Informatik und Kryptographie

Bachelorarbeiten: z.B. Kryptographie, (parallele) Algorithmen und theoretische Informatik

EMail:

Steffen.Reith@hs-rm.de B ¨uro:

Raum C202

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 3 / 24

(8)

. . . . . .

Weitere Informationen zur Vorlesung

Webseite:http://www.cs.hs-rm.de/˜reith Literatur:

Gunter Saake und Kai-Uwe Sattler, Algorithmen und Datenstrukturen, dpunkt.verlag, 2005

Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest und Clifford Stein, Introduction to Algorithms, MIT Press, 2001 Robert Sedgewick, Algorithmen in C, Addison-Wesley, 1997 Uwe Sch ¨oning, Algorithmik, Spektrum Verlag, 2001

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 4 / 24

(9)

. . . . . .

Weitere Informationen zur Vorlesung

Webseite:http://www.cs.hs-rm.de/˜reith Literatur:

Gunter Saake und Kai-Uwe Sattler, Algorithmen und Datenstrukturen, dpunkt.verlag, 2005

Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest und Clifford Stein, Introduction to Algorithms, MIT Press, 2001 Robert Sedgewick, Algorithmen in C, Addison-Wesley, 1997 Uwe Sch ¨oning, Algorithmik, Spektrum Verlag, 2001

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 4 / 24

(10)

. . . . . .

Weitere Informationen zur Vorlesung

Webseite:http://www.cs.hs-rm.de/˜reith Literatur:

Gunter Saake und Kai-Uwe Sattler, Algorithmen und Datenstrukturen, dpunkt.verlag, 2005

Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest und Clifford Stein, Introduction to Algorithms, MIT Press, 2001 Robert Sedgewick, Algorithmen in C, Addison-Wesley, 1997 Uwe Sch ¨oning, Algorithmik, Spektrum Verlag, 2001

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 4 / 24

(11)

. . . . . .

Weitere Informationen zur Vorlesung

Webseite:http://www.cs.hs-rm.de/˜reith Literatur:

Gunter Saake und Kai-Uwe Sattler, Algorithmen und Datenstrukturen, dpunkt.verlag, 2005

Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest und Clifford Stein, Introduction to Algorithms, MIT Press, 2001 Robert Sedgewick, Algorithmen in C, Addison-Wesley, 1997 Uwe Sch ¨oning, Algorithmik, Spektrum Verlag, 2001

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 4 / 24

(12)

. . . . . .

Weitere Informationen zur Vorlesung

Webseite:http://www.cs.hs-rm.de/˜reith Literatur:

Gunter Saake und Kai-Uwe Sattler, Algorithmen und Datenstrukturen, dpunkt.verlag, 2005

Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest und Clifford Stein, Introduction to Algorithms, MIT Press, 2001 Robert Sedgewick, Algorithmen in C, Addison-Wesley, 1997 Uwe Sch ¨oning, Algorithmik, Spektrum Verlag, 2001

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 4 / 24

(13)

. . . . . .

Weitere Informationen zur Vorlesung (II)

Ersatztermine:

Werden dienstags stattfinden Skript:

Wird in unregelm ¨aßigen Abst ¨anden auf der Webseite der Vorlesung ver ¨offentlicht (Eine alte Variante steht bereits auf der Webseite zur Verf ¨ugung). user: algo / pw: fun

Folien:

Einzelne (kleine) Teile der Vorlesung werden in Folienform zur Verf ¨ugung stehen. Folien, die vom Skript abweichen, werden auf der Webseite (nachtr ¨aglich) zur Verf ¨ugung stehen.

Eine eigene Mitschrift sollteangefertigtwerden!

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 5 / 24

(14)

. . . . . .

Weitere Informationen zur Vorlesung (II)

Ersatztermine:

Werden dienstags stattfinden Skript:

Wird in unregelm ¨aßigen Abst ¨anden auf der Webseite der Vorlesung ver ¨offentlicht (Eine alte Variante steht bereits auf der Webseite zur Verf ¨ugung).user: algo / pw: fun

Folien:

Einzelne (kleine) Teile der Vorlesung werden in Folienform zur Verf ¨ugung stehen. Folien, die vom Skript abweichen, werden auf der Webseite (nachtr ¨aglich) zur Verf ¨ugung stehen.

Eine eigene Mitschrift sollteangefertigtwerden!

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 5 / 24

(15)

. . . . . .

Weitere Informationen zur Vorlesung (II)

Ersatztermine:

Werden dienstags stattfinden Skript:

Wird in unregelm ¨aßigen Abst ¨anden auf der Webseite der Vorlesung ver ¨offentlicht (Eine alte Variante steht bereits auf der Webseite zur Verf ¨ugung). user: algo / pw: fun

Folien:

Einzelne (kleine) Teile der Vorlesung werden in Folienform zur Verf ¨ugung stehen. Folien, die vom Skript abweichen, werden auf der Webseite (nachtr ¨aglich) zur Verf ¨ugung stehen.

Eine eigene Mitschrift sollteangefertigtwerden!

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 5 / 24

(16)

. . . . . .

Weitere Informationen zur Vorlesung (II)

Ersatztermine:

Werden dienstags stattfinden Skript:

Wird in unregelm ¨aßigen Abst ¨anden auf der Webseite der Vorlesung ver ¨offentlicht (Eine alte Variante steht bereits auf der Webseite zur Verf ¨ugung). user: algo / pw: fun

Folien:

Einzelne (kleine) Teile der Vorlesung werden in Folienform zur Verf ¨ugung stehen. Folien, die vom Skript abweichen, werden auf der Webseite (nachtr ¨aglich) zur Verf ¨ugung stehen.

Eine eigene Mitschrift sollteangefertigtwerden!

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 5 / 24

(17)

. . . . . .

Weitere Informationen zur Vorlesung (II)

Ersatztermine:

Werden dienstags stattfinden Skript:

Wird in unregelm ¨aßigen Abst ¨anden auf der Webseite der Vorlesung ver ¨offentlicht (Eine alte Variante steht bereits auf der Webseite zur Verf ¨ugung). user: algo / pw: fun

Folien:

Einzelne (kleine) Teile der Vorlesung werden in Folienform zur Verf ¨ugung stehen. Folien, die vom Skript abweichen, werden auf der Webseite (nachtr ¨aglich) zur Verf ¨ugung stehen.

Eine eigene Mitschrift sollteangefertigtwerden!

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 5 / 24

(18)

. . . . . .

Lernen

Ein Student von Euklid fragte:

”Aber was werde ich davon haben, wenn ich all’ dies gelernt habe?“

Euklid rief seinen Sklaven uns sagte ihm

”Gib ihm drei Oboli, der Mann muss etwas davan haben, dass er was lernt.“

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 6 / 24

(19)

. . . . . .

Lernen

Ein Student von Euklid fragte:

”Aber was werde ich davon haben, wenn ich all’ dies gelernt habe?“

Euklid rief seinen Sklaven uns sagte ihm

”Gib ihm drei Oboli, der Mann muss etwas davan haben, dass er was lernt.“

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 6 / 24

(20)

. . . . . .

Lernen

Ein Student von Euklid fragte:

”Aber was werde ich davon haben, wenn ich all’ dies gelernt habe?“

Euklid rief seinen Sklaven uns sagte ihm

”Gib ihm drei Oboli, der Mann muss etwas davan haben, dass er was lernt.“

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 6 / 24

(21)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(22)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(23)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(24)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(25)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(26)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(27)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(28)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(29)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(30)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(31)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(32)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(33)

. . . . . .

Ein roter Faden

In der Vorlesung werden die folgenden Themen untersucht:

.

1.. Grundlagen und Notationen .

2.. Die Korrektheit von Algorithmen - ein Beispiel .

3.. Suchen .

4.. Insertion Sort und Laufzeitanalyse .

5.. Die O-Notation .

..

6 Merge Sort .

..

7 Eine untere Schranke f ¨ur Sortierverfahren .

..

8 Andere Sortierverfahren .

..

9 Dyn. Datenstrukturen - Stacks, Warteschlangen und Listen .

10.. B ¨aume & Algorithmen zur Traversierung .

11.. AVL - B ¨aume .

12.. Hashing .

13.. Graphenalgorithmen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 7 / 24

(34)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(35)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(36)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(37)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(38)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(39)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(40)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(41)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(42)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(43)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(44)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(45)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(46)

. . . . . .

Spielregeln

Rechnerund Handys sind zu Beginn der Veranstaltungaus Wir (Dozent + H ¨orer) sindp ¨unktlich

Esredet nur eine Person

Bei Fragen und Problemensofort melden / fragen

Es wird Eigeninitiative und selbstst ¨andiges Arbeiten erwartet Eine Vorlesung ist keine (w ¨ochentliche) Fernsehserie!

Eine Vorlesung wird vonden H ¨orern und vom Dozentengestaltet

aktive Mitarbeit erw ¨unscht und erforderlich

Der Dozent will motiviert werden

Umfangreiche Vor- und Nachbereitung notwendig

Lernen nur kurz vor der Klausur ist t ¨otlich! (kontinuierliches Lernen) Vergessen Sie den (angeblichen) Konflikt von Theorie und Praxis

Was w ¨unschen Sie sich?

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 8 / 24

(47)

. . . . . .

Praktikum

Start des Praktikums: heute geht es los

Auf der Webseite zur Vorlesung werden Siejede Woche Aufgabenbl ¨atter f ¨ur das Praktikum finden.

In jeder Praktikumsstunde werden ca. dreizuf ¨allig ausgew ¨ahlte Teilnehmer ihre L ¨osungen vorstellen und Noten erhalten.

Wir verwendenCals Programmiersprache. IDEs sind verboten!

W ¨ahlen Sie einen Editor nach Ihrem Geschmack. ¨Ubersetzt wird mit Hilfe von Shellkommandos oder Makefiles.

Regelm ¨aßige Anwesenheit im Praktikum ist erforderlich! (75% Regel)

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 9 / 24

(48)

. . . . . .

Praktikum

Start des Praktikums: heute geht es los

Auf der Webseite zur Vorlesung werden Siejede Woche Aufgabenbl ¨atter f ¨ur das Praktikum finden.

In jeder Praktikumsstunde werden ca. dreizuf ¨allig ausgew ¨ahlte Teilnehmer ihre L ¨osungen vorstellen und Noten erhalten.

Wir verwendenCals Programmiersprache. IDEs sind verboten!

W ¨ahlen Sie einen Editor nach Ihrem Geschmack. ¨Ubersetzt wird mit Hilfe von Shellkommandos oder Makefiles.

Regelm ¨aßige Anwesenheit im Praktikum ist erforderlich! (75% Regel)

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 9 / 24

(49)

. . . . . .

Praktikum

Start des Praktikums: heute geht es los

Auf der Webseite zur Vorlesung werden Siejede Woche Aufgabenbl ¨atter f ¨ur das Praktikum finden.

In jeder Praktikumsstunde werden ca. dreizuf ¨allig ausgew ¨ahlte Teilnehmer ihre L ¨osungen vorstellen und Noten erhalten.

Wir verwendenCals Programmiersprache. IDEs sind verboten!

W ¨ahlen Sie einen Editor nach Ihrem Geschmack. ¨Ubersetzt wird mit Hilfe von Shellkommandos oder Makefiles.

Regelm ¨aßige Anwesenheit im Praktikum ist erforderlich! (75% Regel)

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 9 / 24

(50)

. . . . . .

Praktikum

Start des Praktikums: heute geht es los

Auf der Webseite zur Vorlesung werden Siejede Woche Aufgabenbl ¨atter f ¨ur das Praktikum finden.

In jeder Praktikumsstunde werden ca. dreizuf ¨allig ausgew ¨ahlte Teilnehmer ihre L ¨osungen vorstellen und Noten erhalten.

Wir verwendenCals Programmiersprache. IDEs sind verboten!

W ¨ahlen Sie einen Editor nach Ihrem Geschmack. ¨Ubersetzt wird mit Hilfe von Shellkommandos oder Makefiles.

Regelm ¨aßige Anwesenheit im Praktikum ist erforderlich! (75% Regel)

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 9 / 24

(51)

. . . . . .

Praktikum

Start des Praktikums: heute geht es los

Auf der Webseite zur Vorlesung werden Siejede Woche Aufgabenbl ¨atter f ¨ur das Praktikum finden.

In jeder Praktikumsstunde werden ca. dreizuf ¨allig ausgew ¨ahlte Teilnehmer ihre L ¨osungen vorstellen und Noten erhalten.

Wir verwendenCals Programmiersprache. IDEs sind verboten!

W ¨ahlen Sie einen Editor nach Ihrem Geschmack. ¨Ubersetzt wird mit Hilfe von Shellkommandos oder Makefiles.

Regelm ¨aßige Anwesenheit im Praktikum ist erforderlich! (75% Regel)

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 9 / 24

(52)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(53)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(54)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(55)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(56)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(57)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(58)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(59)

. . . . . .

Was ist ein Algorithmus?

Definition

”Algorithmus“ (informell): Ein Algorithmus ist eine eindeutige (Berechnungs-)Vorschrift, die beschreibt wie man Eingabeobjekte in Ausgabeobjekte umwandelt.

”Kochen harter Eier nach P. Bocuse (1977)”:

.

1.. In einem ausreichend großen Topf Wasser zum Kochen bringen .

2.. Das Ei in ein Sieb mit groben L ¨ochern legen .

..

3 Das Sieb in das kochende Wasser legen .

4.. Wenn das Ei mittelgroß ist, dann 9 Minuten kochen .

5.. Wenn das Ei groß ist, dann 10 Minuten kochen .

6.. Sieb aus dem kochenden Wasser nehmen .

7.. Sieb in kaltes Wasser tauchen

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 10 / 24

(60)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(61)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(62)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(63)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(64)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(65)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(66)

. . . . . .

Was ist ein Algorithmus? (II)

”Berechnen des gr ¨oßten gemeinsamen Teilers nach Euklid (ca. 300 v. Chr.)”:

Eingaben: Zwei Zahlenaundb .

1.. Wennagr ¨oßer alsb, dann tausche beide Zahlen .

2.. Teileb(ganzzahlig) durchamit Restr .

..

3 Setzebauf den Wert vonaundaauf den Wert vonr .

4.. Istr gr ¨oßer 0 arbeite bei Schritt 2 weiter .

5.. Gibbaus (ist der gr ¨oßte gemeinsame Teiler vonaundb) Zus ¨atzlich fordern wir: Eine solche Vorschrift muss von einem

mechanischen oder elektronischen Ger ¨at, dem Prozessor, ausgef ¨uhrt werden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 11 / 24

(67)

. . . . . .

Probleme

Algorithmen l ¨osen (Berechnungs-)Probleme. Um solche Probleme formal besser darstellen zu k ¨onnen, benutzen wir folgende Notation:

Problem: EIERKOCHEN Eingabe: Ein Ei

Ausgabe: Ein hartgekochtes Ei Problem: GGT

Eingabe: Zwei nat ¨urliche Zahlenaundb

Ausgabe: Der gr ¨oßte gemeinsame Teiler vonaundb

Eine konkrete Eingabe eines Problems wollen wirInstanznennen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 12 / 24

(68)

. . . . . .

Probleme

Algorithmen l ¨osen (Berechnungs-)Probleme. Um solche Probleme formal besser darstellen zu k ¨onnen, benutzen wir folgende Notation:

Problem: EIERKOCHEN Eingabe: Ein Ei

Ausgabe: Ein hartgekochtes Ei Problem: GGT

Eingabe: Zwei nat ¨urliche Zahlenaundb

Ausgabe: Der gr ¨oßte gemeinsame Teiler vonaundb

Eine konkrete Eingabe eines Problems wollen wirInstanznennen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 12 / 24

(69)

. . . . . .

Probleme

Algorithmen l ¨osen (Berechnungs-)Probleme. Um solche Probleme formal besser darstellen zu k ¨onnen, benutzen wir folgende Notation:

Problem: EIERKOCHEN Eingabe: Ein Ei

Ausgabe: Ein hartgekochtes Ei Problem: GGT

Eingabe: Zwei nat ¨urliche Zahlenaundb

Ausgabe: Der gr ¨oßte gemeinsame Teiler vonaundb

Eine konkrete Eingabe eines Problems wollen wirInstanznennen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 12 / 24

(70)

. . . . . .

Einige Anforderungen an Algorithmen

Ein Algorithmus sollte folgenden Anforderungen gen ¨ugen:

Endlichkeit - Der Algorithmus muss eineendliche Beschreibung (”Befehle“) haben.

Determiniertheit - Jeder Eingabewert in den Algorithmus f ¨uhrt zu einemeindeutigen Resultat. Verarbeitet der Algorithmus diesen Wert erneut, so muss er dasgleicheErgebnis liefern.

Vollst ¨andigkeit - Ein Algorithmush ¨altf ¨ur jede zul ¨assige Eingabe nachendlich vielen Schrittenan (=terminiert).

Universalit ¨at - Alle (zul ¨assigen) Eingabedaten werdenkorrekt verarbeitet.

Nachvollziehbarkeit - Ein Algorithmus muss von Dritten nachvollzogen / ¨uberpr ¨uftwerden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 13 / 24

(71)

. . . . . .

Einige Anforderungen an Algorithmen

Ein Algorithmus sollte folgenden Anforderungen gen ¨ugen:

Endlichkeit - Der Algorithmus muss eineendliche Beschreibung (”Befehle“) haben.

Determiniertheit - Jeder Eingabewert in den Algorithmus f ¨uhrt zu einemeindeutigen Resultat. Verarbeitet der Algorithmus diesen Wert erneut, so muss er dasgleicheErgebnis liefern.

Vollst ¨andigkeit - Ein Algorithmush ¨altf ¨ur jede zul ¨assige Eingabe nachendlich vielen Schrittenan (=terminiert).

Universalit ¨at - Alle (zul ¨assigen) Eingabedaten werdenkorrekt verarbeitet.

Nachvollziehbarkeit - Ein Algorithmus muss von Dritten nachvollzogen / ¨uberpr ¨uftwerden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 13 / 24

(72)

. . . . . .

Einige Anforderungen an Algorithmen

Ein Algorithmus sollte folgenden Anforderungen gen ¨ugen:

Endlichkeit - Der Algorithmus muss eineendliche Beschreibung (”Befehle“) haben.

Determiniertheit - Jeder Eingabewert in den Algorithmus f ¨uhrt zu einemeindeutigen Resultat. Verarbeitet der Algorithmus diesen Wert erneut, so muss er dasgleicheErgebnis liefern.

Vollst ¨andigkeit - Ein Algorithmush ¨altf ¨ur jede zul ¨assige Eingabe nachendlich vielen Schrittenan (=terminiert).

Universalit ¨at - Alle (zul ¨assigen) Eingabedaten werdenkorrekt verarbeitet.

Nachvollziehbarkeit - Ein Algorithmus muss von Dritten nachvollzogen / ¨uberpr ¨uftwerden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 13 / 24

(73)

. . . . . .

Einige Anforderungen an Algorithmen

Ein Algorithmus sollte folgenden Anforderungen gen ¨ugen:

Endlichkeit - Der Algorithmus muss eineendliche Beschreibung (”Befehle“) haben.

Determiniertheit - Jeder Eingabewert in den Algorithmus f ¨uhrt zu einemeindeutigen Resultat. Verarbeitet der Algorithmus diesen Wert erneut, so muss er dasgleicheErgebnis liefern.

Vollst ¨andigkeit - Ein Algorithmush ¨altf ¨ur jede zul ¨assige Eingabe nachendlich vielen Schrittenan (=terminiert).

Universalit ¨at - Alle (zul ¨assigen) Eingabedaten werdenkorrekt verarbeitet.

Nachvollziehbarkeit - Ein Algorithmus muss von Dritten nachvollzogen / ¨uberpr ¨uftwerden k ¨onnen.

Steffen Reith Algorithmen und Datenstrukturen 28. M ¨arz 2012 13 / 24

Referenzen

ÄHNLICHE DOKUMENTE

in Polynomialzeit eine Formel konstruieren, die genau dann erf ¨ullbar ist, wenn das Problem eine L ¨osung hat — und man kann aus der erf ¨ullenden Belegung eine L

in Polynomialzeit eine Formel konstruieren, die genau dann erf ¨ullbar ist, wenn das Problem eine L ¨osung hat — und man kann aus der erf ¨ullenden Belegung eine L

Machen Sie dabei vor allem deutlich wie die beiden Algorithmen mit Hilfe von Datenstruk- turen die Knotenmenge verwalten.

Das Spiel bevorteilt die Bank, falls die Bank im Erwartungswert von einem Spieler mehr Geld einnimmt als sie an diesen auszahlt?.

Wenden Sie dann den Tiefensuchalgorithmus startend bei Knoten 1 auf den Graphen an und geben Sie zu jedem Knoten v die Discovering/Finishing-Times (d[v], f [v]) an. Benutzen Sie

Christian Sohler Paderborn, den 22. Ist dies notwendig, oder existiert auch ein vern¨unftiger Begriff der topologischen Sortierung f¨ur allgemeine gerichtete oder ungerichtete

Modifizieren Sie den Algorithmus von Bellman-Ford, so dass dieser in Laufzeit O(|V | · |E|) f¨ur jeden Knoten v ∈ V die Kosten eines k¨urzesten s-v-Pfades berechnet, wobei |E| >

Beispielrechnungen mit dieser Implementierung sind im Hinblick auf Vermeidung von Re- chenaufwand nicht sehr ermutigend, denn die entstehenden Koeffizienten sind deutlich gr¨oßer