. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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
. . . . . .
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