Algorithmen und Datenstrukturen

Ähnliche Dokumente
Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Datenstrukturen und Algorithmen

Algorithmen und Datenstrukturen

Vorlesung Algorithmen und Datenstrukturen (Wintersemester 2017/2018)

Informatik II Algorithmen & Datenstrukturen

Algorithmen & Datenstrukturen

Vorlesung Programmieren

Programmiervorkurs. Wintersemester 2013/2014

Algorithmen und Datenstrukturen

Grundlagen der Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen. Organisatorisches. Christian Komusiewicz Ernst-Abbe-Platz 2, R3315

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen (AuD) Prof. Dr. Claudia Eckert und Dr. Thomas Stibor

ADS. 1. Vorlesung. Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm

Einführung in die Programmierung

Einführung in die Informatik

Informatik 1 (WS 2018/2019)

Informatik II: Algorithmen und Datenstrukturen SS 2013

Informatikgrundlagen (WS 2016/2017)

Algorithmen und Datenstrukturen CS1017

Programmieren I. Überblick. Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Programmieren I. Überblick. Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Informatik II. Willkommen zur Vorlesung! Das Team. Übungsbetrieb. Vorlesung am D-BAUG der ETH Zürich

Algorithmen und Datenstrukturen (AuD) Prof. Dr. Claudia Eckert

Diskrete Strukturen WS 2010/11. Ernst W. Mayr. Wintersemester 2010/11. Fakultät für Informatik TU München

Algorithmen und Datenstrukturen (für ET/IT) Programm heute. Sommersemester Dr. Tobias Lasser. 1 Organisation

Einführung in die Programmierung

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Personen. Termine. Vorlesung. Sommersemester Dr. Tobias Lasser

Datenstrukturen. Sommersemester Kapitel 1: Motivation / Grundlagen. Steffen Lange

Datenstrukturen und Algorithmen

Diskrete Mathematik I

Programmieren I. Überblick. Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Workload: 150 h ECTS Punkte: 5

Algorithmen und Datenstrukturen

Datenstrukturen, Algorithmen und Programmierung 2

Institut für Telematik Universität zu Lübeck. Programmieren. Kapitel 0: Organisatorisches. Wintersemester 2008/2009. Prof. Dr.

Algorithmen und Datenstrukturen

Einführung in die Programmierung. Organisatorisches. Skript zur Vorlesung Einführung in die Programmierung

Algorithmen & Komplexität

Einführung in die Informatik: Programmierung und Softwareentwicklung

Informatik II, SS 2018

Übung Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen (für ET/IT)

Java-Programmierung mit NetBeans

Vorlesung Informatik, Teil 1. Organisatorisches

Algorithmen und Datenstrukturen

Informatikgrundlagen (WS 2015/2016)

Programmier-Projekt (cs108)

Programmiertechnik II WS 2017/18

Organisatorisches. Software Engineering 1 WS 2012/13. Prof. Dr.-Ing. Ina Schaefer. Institut für Softwaretechnik und Fahrzeuginformatik TU Braunschweig

Konvexe Hülle. Abbildung: [Wikipedia]: Nicht-konvexe Menge (links), konvexe Menge (rechts) KIT Institut für Theoretische Informatik 510

Kapitel 1: Einleitung. Gliederung. Zum Begriff Informatik Zum Begriff Algorithmus Zum Begriff Programmieren

Informatik II - Übung 01

Diskrete Strukturen WS Ernst W. Mayr. Wintersemester Fakultät für Informatik TU München

Vorlesung Informatik, Teil 2. Organisatorisches

Graphentheorie. für Wiederholer Bachelor Informatik und Wirtschaftsinformatik. Prof. Dr. Peter Becker

Fächer und Prüfungen im Bachelorstudium

WS 2015/16 Diskrete Strukturen Organisatorisches

Einführung in die Informatik: Programmierung und Software-Entwicklung

Fächer und Prüfungen im Bachelorstudium

Vorlesung Datenstrukturen

Programmiertechnik II SS Fakultät Informatik Bachelor Angewandte Informatik

Datenstrukturen, Algorithmen und Programmierung 2

Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen

Einführung in die Programmierung

Einführung in die Programmierung

Vorlesung Logik Wintersemester 2016/17 Universität Duisburg-Essen

Informatik 1 für Studiengang Elektrotechnik/Kommunikationstechnik

Einführung in die Programmierung Wintersemester 2016/17

Transkript:

1 Lehrstuhl für Informatik I Algorithmen und Datenstrukturen Wintersemester 2015/16 Organisatorisches Vorlesung: Übungsbetreuung: Übungen: Alexander Wolff (E29) Krzysztof Fleszar (E16) Anna Aumann Johannes Barthelmes Fabian Feitsch Alexej Grigorjew Christoph Hagen Michael Leeming Bernd Zeidler

3 Algorithmen...... sind (wohldefinierte, endliche) Folgen von Anweisungen, die aus einer Eingabe eine Ausgabe produzieren. Algorithmus Eingabe Ausgabe Beispiele: Kochrezepte Algorithmen zur Verknüpfung (+,,, :) zweier Zahlen in Dezimaldarstellung Euklidscher Algorithmus Dijkstras Algorithmus

4 Algorithmen... Frage: Ist ein ausführbares Java-Programm ein Algorithmus? Ein Algorithmus ist eine (wohldefinierte, endliche) Folge von Anweisungen, die aus einer Eingabe eine Ausgabe produziert. Antwort: Dem Buchstaben der Definition nach: JA. Dem Geiste nach: NEIN. Ich würde sagen: Ein Algorithmus ist ein abstraktes Konzept; ein Programm ist eine Instanz dieses Konzeptes. Algorithmus in natürlicher Sprache oder in Pseudocode fixiert Programmierer ausführbares Programm maschinenlesbar meist länger als Beschreibung des Algorithmus

5... und Datenstrukturen Datenstruktur: Konzept, mit dem man Daten speichert und anordnet, so dass man sie schnell finden und ändern kann. Abstrakter Datentyp: beschreibt die Schnittstelle einer Datenstruktur welche Operationen werden unterstützt? Implementierung: wie wird die gewünschte Funktionalität realisiert: wie sind die Daten gespeichert (Feld, Liste,...)? welche Algorithmen implementieren die Operationen?

6 Algorithmen & Datenstrukturen Lernziele: Inhalt: In dieser Veranstaltung werden Sie lernen... die Effizienz von Algorithmen zu messen und miteinander zu vergleichen, grundlegende Algorithmen und Datenstrukturen in Java zu implementieren, selbst Algorithmen und Datenstrukturen zu entwerfen sowie deren Korrektheit und Effizienz zu beweisen. Grundlagen und Analysetechniken Sortierverfahren Entwurfstechniken für Algorithmen Datenstrukturen Algorithmen für Graphen Systematisches Probieren

7 Ihre Voraussetzungen Schulmathematik, insbesondere: Grundrechenarten & Logarithmus Drei Summen: 1) n i=1 i 2) n i=0 qi 3) n i=1 1 i Linearität des Erwartungswerts Beweise mit vollständiger Induktion Widerspruchsbeweise Bereitschaft sich in Java hineinzudenken und -zuüben Keine Angst vorm Fragenstellen!!! z.b. log b x log b y = log? y x arithmetische Reihe geometrische Reihe harmonische Reihe E[X + Y ] = E[X ] + E[Y ]...... 1 2 3 n n + 1

Studienverlaufsplan BA Informatik Sem. 6 5 4 3 2 SWS: ca. 20 0 10 ECTS 20 30 Hardwareprakt. Algorithmische Graphentheorie Stochastik für Inf Mathe Inf II Seminar Softwareprakt. Wahl pflicht Progr.-Prakt. Rechenanlagen Bachelorarbeit Theo. Inf. Logik Koll. Allgemeine Schlüsselqualifikationen Seminar Softwaretech. 1 Mathe Inf I Algorithmen+ Inf-Übertrag. Datenstrukt. 10 ECTS 20 h/woche 8

9 Organisation I: Wochenplan 8 30 10 10 12 (WueCampus oder Briefkasten) und PABS Montag Dienstag Mittwoch Donnerstag Freitag Abgabe Lösungen 10:10 Vorlesung Zuse-HS Ausgabe Ü-Blatter WueCampus Vorlesung Zuse-HS 12 14 14 16 16 18 Finden diese Woche schon statt! Diese Woche beliebig aussuchen! Übung SE I Übung SE II&III Übung SE I Übung SE II Übung SE II Übung SE II Ab und zu Laptop nötig!

10 Organisation II: Semesterplan 13.10. 15.10. 20.10. 22.10. 27.10. 29.10. 03.11. 05.11. 10.11. 12.11. 17.11. 19.11. 24.11. 26.11. 01.12. 03.12. 08.12. 10.12. 15.12. 17.12. 22.12. 24.12. -05.01. 07.01. 12.01. 14.01. 19.01. 21.01. 26.01. 28.01. 02.02. 04.02.??.02. Start: heute! 1. Test 2. Test Weihnachten Hl. 3 Könige 3. Test 1. Klausur 10:00 12:00 (?) Turing+Zuse 2. Klausur??. April, 10:00 12:00, Zuse-HS

11 Organisatorisches III: Studienordnungen < 2014 2014 2015 1 Modul 2 Module 1 Modul (kombiniert) dito, für Klausurzulassung Pflicht! Übungsmodul: 40% aller Testpunkte (Einzelarbeit) 50% aller Übungspunkte (Arbeit in 2er/3er-Gruppen) 0% Plagiate oder Übungsklausur (4h) am Semesterende (kombiniert) dito, Voraussetzung für Bonus (0,3 Notenpunkte falls 1. Klausur bestanden wird) dito { Vorlesungsmodul: Vorlesung + Klausur (benotet) Sie dürfen ( oft) wiederholen, solange Sie nicht bestehen. } dito

12 Literatur zu Algorithmen & Datenstrukturen Cormen, Leiserson, Rivest, Stein: Introduction to Algorithms MIT Press, 3. Aufl., 2009. Ca. 52 e. oder Algorithmen eine Einführung Oldenbourg, 3. Aufl., 2010. Ca. 80 e. Ottmann & Widmayer: Algorithmen und Datenstrukturen Spektrum-Verlag, 5. Aufl., 2012. Ca. 50 e. Mehlhorn & Sanders: Algorithms and Data Structures: The Basic Toolbox Springer, 2008. Ca. 38 e. Goodrich & Tamassia: Data Structures & Algorithms in Java. Wiley, 5. Aufl., 2010. Ca. 115 e. Kleinberg & Tardos: Algorithm Design Pearson, 2006. Ca. 90 e.

13 Literatur über Java D. Ratz, J. Scheffler, D. Seese, J. Wiesenberger: Grundkurs Programmieren in Java (Band 1) Hanser Verlag http://www.grundkurs-java.de/ C. Ullenboom: Java ist auch eine Insel Galileo Computing openbook.galileocomputing.de/javainsel/ Für alle, die Java noch nicht kennen und nicht beim Vorkurs waren: WueCampus-Kurs Einführung in die Programmierung (WS15): https://wuecampus2.uni-wuerzburg.de/moodle/enrol/index.php?id=13988 Arbeiten Sie insbesondere alle Übungsaufgaben durch!

14 TO DO Erfüllen Sie die Voraussetzungen? log b x log b y =? Lesen Sie Anhang A im Buch von Corman et al.! Lösen Sie die Übungsaufgaben dazu! Schreiben Sie sich in die VL ein! Vorlesungsfolien und Übungsblätter: wuecampus2.uni-wuerzburg.de WueCampus Übungseinteilung bis Fr, 23:59 Uhr: https://www-sbhome1.zv.uni-wuerzburg.de sb@home Installieren Sie vor Ihrer Übung das Java Development Kit (JDK 8u60 Standard Edition): www.oracle.com/technetwork/java/javase/downloads die Java-Entwicklungsumgebung Eclipse (neuste Version): www.eclipse.org/downloads