Algorithmen und Datenstrukturen CS1017

Ähnliche Dokumente
ADS. 1. Vorlesung. Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm

Einführung in die Informatik

Algorithmen und Datenstrukturen

Datenstrukturen und Algorithmen

Algorithmen & Datenstrukturen

Algorithmen und Datenstrukturen

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

Algorithmen und Datenstrukturen

Informatikgrundlagen (WS 2016/2017)

Informatik 1 (WS 2018/2019)

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

Informatik II Algorithmen & Datenstrukturen

Vorlesung Programmieren

Algorithmen und Datenstrukturen

I.1. Organisatorisches - 1 -

Algorithmen und Datenstrukturen. PD Ma&hias Thimm

Vorlesung Informatik II

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

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

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Verteilte Systeme CS5001

Logik für Informatiker

Das Praktikum mit Seminar vertieft die in der Vorlesung erworbenen Fähigkeiten in theoretischer und praktischer Hinsicht:

60% der Aufgabenblätter in den Übungen müssen bestanden werden und jeweils ein erfolgreiches Referat gehalten werden.

Algorithmen und Datenstrukturen

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

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

Programmier-Projekt (cs108)

Vorlesung Algorithmen und Datenstrukturen (Wintersemester 2017/2018)

Kapitel -1 Organisatorisches

Vorlesung Programmierung

Einführung in die Programmierung

Modulhandbuch. Wintersemester 2016/17: Veranstaltungen der Arbeitsgruppe Diskrete Mathematik, Optimierung und Operations Research keine Zuordnung

Informatikgrundlagen (WS 2015/2016)

Einführung in die Programmierung

Vorlesung Programmierung

Vorlesung Programmierung

Informatik II: Algorithmen und Datenstrukturen SS 2013

Antragsteller/in: Dr. Thoralf Räsch Datum:

WS 2015/16 Diskrete Strukturen Organisatorisches

Algorithmen & Komplexität

Algorithmen und Datenstrukturen

Organisation: Algorithmische Mathematik WiSe 2013/2014

Einführung. Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008

Algorithmen und Datenstrukturen

Datenbanken Datenbanken 1 Belegnummer Belegnummer

Einführung in die Programmierung

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

Datenstrukturen, Algorithmen und Programmierung 2

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Einführung in die Informatik

Algorithmen und Datenstrukturen

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

Algorithmen und Datenstrukturen (für ET/IT)

Einführung in die Programmierung Wintersemester 2008/09

Lernziele Ablauf Übungsaufgaben Formalitäten. Programmierpraktika. Einführung in das Programmieren und Weiterführendes Programmieren

Algorithmen mit Python

Mathematische Grundlagen I Logik und Algebra

Übung Algorithmen und Datenstrukturen

Programmiermethodik Vorlesung und Praktikum SS 2001

Einführung. Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009

Einführung in die Informatik

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg

Grundlagen der Bildverarbeitung: Informationen zur Übung

Algorithmen und Berechnungskomplexität I

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

Vorlesung Berechenbarkeit und Komplexität. Motivation, Übersicht und Organisatorisches

Algorithmen und Berechnungskomplexität I

der Programmierung (2 V + 3 Ü) WS 2014 / 2015 EDV, WS 2014/2015, Prof. Dr.-Ing. Sigrid Wenzel Seite 1

Datenstrukturen und Algorithmen

Mathematische Grundlagen II Lineare Algebra und Differential- und Integralrechnung

Einführung in die Informatik

Algorithmen und Datenstrukturen

Stand: Semester: Dauer: Modulnummer: Minimaldauer 1 Semester IOBP. Regulär angeboten im: Modultyp: Pflicht WS, SS

Datenbank-Implementierungstechniken

Transkript:

Algorithmen und Datenstrukturen CS1017 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Organisatorisches und Einführung

Lehrpersonal Dozent Dr. Letschert Tutoren Alissia Sauer Jonas Dickel Nina Isensee Seite 2

Unterlagen Folien, Aufgaben, siehe Moodle-Kurs Literatur Levitin: Introduction to the Design and Analysis of Algorithms (3te Auflage, 2012) Cormen, Leiserson, Rivest, Stein: Algorithmen - Eine Einführung Saake, Sattler: Algorithmen und Datenstrukturen: Eine Einführung mit Java Sedgewick: Algorithmen in Java Veranstaltungsform Unser Stoff ist elementarer als der in der üblichen Literatur zum Thema. 6 SWS: 4V + 2Ü Bitte bringen Sie Ihr Notebook mit einer funktionieren Java-Installation (Eclipse, o.a.) zu jeder Veranstaltung mit! Bitte kommen Sie pünktlich und nur wenn Sie sich an der Veranstaltung aktiv oder passiv beteiligen wollen! Seite 3

Bewertung Für Teilnehmer die bereits jetzt Klausurzulassung haben: Eine Klausur Bitte melden Sie sich bis spätestens zu 1. 6. wenn Sie bereits über eine Zulassung verfügen! Alle Teilnehmer, die eine Klausurzulassung noch erreichen müssen, benötigen zwei Hausübungen als Klausurzulassung. Die Bewertung der Hausübungen kann in die Endnote einfließen. Seite 4

Hausübungen Die Klausurzulassung wird mit zwei bestandenen Hausübungen erreicht. Hausübung 1 Hausübung 1 gilt als erledigt wenn 5 sogenannte HÜ-1 Übungen (auch Sternchen- Aufgaben) erfolgreich präsentiert wurden. Diese Übungen werden auf den Übungsblättern besonders gekennzeichnet. Jede weitere erfolgreich präsentierte HÜ-1-Übung wird mit einem Bonuspunkt honoriert. Die Präsentation erfolgt individuell bei und in Absprache mit den Tutoren. Dabei muss auch demonstriert werden, dass die Lösung selbständig erarbeitet wurde. Bei der Präsentation der ersten HÜ-1 Übung muss der Nachweis erbracht werden, dass die Veranstaltung OOP erfolgreich absolviert wurde. (Bitte einen Notenauszug mitbringen.) Seite 5

Hausübungen Hausübung 2 In dieser Hausübung wird ein Programmierprojekt bearbeitet. Hausübung 2 wird in Gruppen von 1 4 Mitgliedern bearbeitet. Die Anmeldung zu Hausübung 2 muss bis zum 1. 6. 2016 erfolgen. Alle Gruppenmitglieder müssen dazu 4 der notwendigen 5 HÜ-1 Übungen erreicht haben. Hausübung 2 wird in einem seminaristischen Vortrag präsentiert und verteidigt. Die gelöste Aufgabe (als Jar-Datei) sowie die Folien der Präsentation (als PDF-Datei) müssen vor der Präsentation eingereicht und akzeptiert werden. Bei der Präsentation müssen alle Gruppenmitglieder anwesend sein und ihren Beitrag zur Lösung der Aufgabenstellung überzeugend darstellen. Seite 6

Übungsbetrieb Von den Teilnehmern wird eine aktive Beteiligung am Übungsbetrieb erwartet. Mehrere Übungstermine stehen dabei am Freitag zur Auswahl: 1-ter, 2-ter und 3-ter Block Zur Präsentation der Hausübungen können andere oder zusätzliche Termine vergeben werden. Seite 7

Vorausgesetzte Kenntnisse Kenntnisse und Fertigkeiten, die nach einem erfolgreichen Abschluss folgender Veranstaltungen erwartet werden: Grundlagen der Informatik OOP Diskrete Strukturen Vorausgesetzte Leistungen Die Teilnahme an der Veranstaltung setzt laut Modulhandbuch voraus: Grundlagen der Informatik OOP Formal geprüft wird davon nur OOP: Ohne eine vorliegende Leistung in OOP ist eine Teilnahme an der Veranstaltung nicht möglich! Seite 8

Inhalt Inhalt bekannte Algorithmen und Datenstrukturen anwenden Entwicklung von Algorithmen Bewertung von Algorithmen Datentypen und Datenstrukturen Vertiefung und Erweiterung der Programmierfertigkeiten (in Java) Seite 9

Inhalt Algorithmen Wohl-definiertes schrittweise Verfahren zum Lösen von Problemen Programm implementierter (realisierter) Algorithmus An einen Computer gerichteter Vortrag über ein Verfahren zur Problemlösung Algorithmisches Problemlösen Problem verstehen (Beispiele betrachten!) Welche Mittel werden eingesetzt (Prozeduren, Prozesse, )? Exakte oder ungefähre Lösung gesucht? Ist das Problem bereits gelöst (auf einer anderen Abstraktionsstufe)? Welche algorithmische Technik kann eingesetzt werden? Welche Datenstrukturen werden eingesetzt? Spezifikation der Lösung Analyse des Algorithmus : Korrektheit Effizienz Implementierung / Codierung Analyse der Implementierung : Test Seite 10

Inhalt Allgemein bekannte und eigene Algorithmen Sehr viele algorithmische Probleme sind gelöst Die Problemlösungen sind bekannt und i.d.r. besser gelöst als durch eigene Anstrengungen Bekannte Algorithmen stehen in sprachspezifischer Form zur Verfügung (Bibliotheken, Frameworks) muss jeder Entwickler kennen und verwenden! stehen in abstrakter Form zur Verfügung (Bücher, Skripte, Wikipedia) sollte jeder Informatiker (muss jeder Bachelor) kennen und verwenden können Problemlösung in der Praxis 1. Ist das Problem in einer sprachspezifischen Form bereits gelöst? (API) Wenn ja: Verwende diese Lösung! 2. Ist das Problem generell gelöst? Wenn ja: Passe die (i.a. abstrakte) Lösung an dein Problem an! 3. Werde kreativ! Welche algorithmische Strategie ist angemessen? Wende sie an! Seite 11

Inhalt Lernziel Algorithmen in Form einer Java-Implementierung verwenden können die in abstrakter Form gegeben sind, umsetzen können in konkrete Form Algorithmen neu entwickeln und bewerten können Datenstrukturen in Form von Kolletionstypen in Java verwenden können gängige Datenstrukturen kennen Datenstrukturen in (Java-) API-konformer Art implementieren können Man kann nie sicher sein, dass man bestimmte Dinge nicht gefragt wird. http://www.youtube.com/watch?v=k4rri_ntqc8&feature=related Seite 12

Inhalt Unterrichtssprachen Deutsch Java 8 In diesem Kurs wird Java 8 verwendet. Mit Java-8 neu eingeführte Sprachkonstrukte werden in beschränkten Umfang genutzt. Seite 13