Algorithmen und Datenstrukturen

Ähnliche Dokumente
Theorie der Informatik

Informatikgrundlagen (WS 2015/2016)

Algorithmen und Datenstrukturen CS1017

Datum Wochen Band DVD Band eingelegt Protokoll kontr. Recovery kontr. Tag Nr. RW Sign. Sign. Sign.

Kapitel 0: Organisatorisches

Vorlage zur Dokumentation der täglichen Arbeitszeit

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

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

Haushaltsbuch Jänner 2013

Wangerooge Fahrplan 2016

Grundlagen: Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Logik und diskrete Strukturen

Informatik II Datenstrukturen und Algorithmen

Vorlage zur Dokumentation der täglichen Arbeitszeit

Programmierung. Prof. Dr. Michael Hanus Tel , R. 706 / CAP-4

Modulbeschreibung Fakultät Gebäudetechnik und Informatik gültig ab WS 2010/11. Niveaustufe: Bachelor

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Algorithmen und Berechnungskomplexität I

Wintersemester 2010/2011 Rüdiger Westermann Institut für Informatik Technische Universität München

Einführung in die Informatik

Einführung und Motivation

Praktische Informatik 1

Datenstrukturen und Algorithmen

Herzlich willkommen zur Lehrveranstaltung. Softwaretechnische Grundlagen / Programmierpraktikum

Teil II: Konzepte imperativer Sprachen

Programmieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL

Praktikum Rechnerintegrierte Produktentwicklung - CAD und Praktikum CAD/CAM im SS 15

Programmierung 2. Organisatorisches. Sebastian Hack. Klaas Boesche. Sommersemester

Fortgeschrittene Programmiertechniken

Einführung in die Informatik

Wangerooge Fahrplan 2015 Fahrzeit Tidebus 50 Minuten, Schiff und Inselbahn ca. 90 Minuten.

Einführung in die Programmierung

Webbasierte Programmierung

Herzlich willkommen zur Lehrveranstaltung. Softwaretechnische Grundlagen / Programmierpraktikum

Einführung in die Programmierung

Computerorientiertes Problemlösen

Technische Informatik II (TI2) FS 2015

Anhang III: Modulhandbuch

Physik 4: Quantenmechanik, Atomund Kernphysik (Pk 4a/b)

Physik 1: Mechanik, Thermodynamik und Schwingungen (Pk 1)

Programmieren I + II

Algorithmen und Datenstrukturen. Große Übung vom Nils Schweer

Algorithmen und Datenstrukturen

Software-Engineering Einführung

Data Mining und maschinelles Lernen

Uf&C Unternehmensführung & Controlling. Modulangebote Masterstudiengänge Wintersemester 2014/2015. Unternehmensführung & Controlling

Organisatorisches. Informatik II Informationen und Daten. Organisatorisches. Organisatorisches. Rainer Schrader. 13. Oktober 2008

Beispiel zu Datenstrukturen

Grundlagen der Programmierung

Programmierung 1 für Wirtschaftsinformatik Wintersemester 2013/14

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

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Informationssysteme. PD Dr. Andreas Behrend. 7. Mai Abgegebene Fragebögen: 36

Grundlagen des betriebswirtschaftlichen Rechnungswesens

BWL B/BWL II ABSATZ UND BESCHAFFUNG

Mein Stundenplan Einführungsvortrag für BSc-StudienanfängerInnen 2008/09

Kontakt. Programmierkurs. Webseite. Ziel des Kurses

Seminarplan für die Durchführung BSc_10 des Bachelor of Science in Wirtschaftsinformatik

Stundenpläne und Module

Software Engineering II Projektorganisation und Management Organisatorische Hinweise

Hans Scheitter GmbH & Co.KG

Vorlesung Informatik, Teil 1. Organisatorisches

Architektur verteilter Anwendungen

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:

Höhere Mathematik I. Einige Bemerkungen zum Beginn... R. Haller-Dintelmann Höhere Mathematik I

Algorithmik - Kompaktkurs

Algorithmen & Datenstrukturen 1. Klausur

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik

Experimentalphysik 5

Vorlesung Informatik, Teil 2. Organisatorisches

Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen

Tutoraufgabe 1 (2 3 4 Bäume):

Prüfungszeiten für den Studiengang Bachelor of Science in Psychologie

Mathematik für Studierende der Wirtschaftswissenschaften und Gesundheitsökonomie

Grundlagen der Anwendungsunterstützung 0. Einführung. WS 2015/2016 M. Werner. Übungen. Übung 1.

Technische Informatik Prof. Dr. Joachim Klaus Anlauf

Programmierung. Prof. Dr. Michael Hanus Tel , R. 706 / CAP-4

Gruppenunterricht zum Thema: Sortierverfahren. Berufsschule / Gymnasium

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7)

Informatik II, SS 2014

Informatik I. Vorlesung an der Universität Bonn im Wintersemester 2001/02. Prof. Dr. Rainer Manthey Prof. Dr. Rainer Manthey Informatik I 1

Algorithmische Geometrie 1. Einführung

A: BACHELOR - Studiengang Bau- und Holztechnik: gemeinsamer Teil der Vertiefungsrichtungen Hoch- und Tiefbau sowie Holztechnik:

Softwareentwicklungspraktikum Nebenfach

Prof. Dr. Heinrich Müller. Informatik VII Universität Dortmund. Organisatorisches zum Vorkurs Informatik

Praxis Dr. Peter Meyer Arzt für Allgemeinmedizin

Wärme- und Stoffübertragung für CBI, LSE, ET, CE und MB

Master Volkswirtschaftslehre (VWL) Internationale Volkswirtschaftslehre

Programmierung für Alle. Borchers: Programmierung für Alle (Java), WS 06/07 Orga 1

Angewandte Mathematik: Stochastik Prof. Dr. Reinhard Klein

Informatik I. Prof. Dr. Xiaoyi Jiang Institut für Informatik Universität Münster WS 2008/2009. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

ASB - Automatische Software-Bewertung

Modulbeschreibung Fakultät Gebäudetechnik und Informatik gültig ab WS 2010/11

Thomas Markwig. 23. Oktober 2013

Programmierkurs Python I

Bioinformatik I (Einführung)

Generated by Foxit PDF Creator Foxit Software

Transkript:

Algorithmen und Datenstrukturen A1. Organisatorisches Marcel Lüthi and Gabriele Röger Universität Basel 28. Februar 2018

Organisatorisches

Personen: Dozenten Marcel Lüthi Gabriele Röger Dozenten Dr. Marcel Lüthi E-Mail: marcel.luethi@unibas.ch Büro: Raum 04.002, Spiegelgasse 1 Dr. Gabriele Röger E-Mail: gabriele.roeger@unibas.ch Büro: Raum 04.005, Spiegelgasse 1

Personen: Tutoren Tutoren Marvin Buff E-Mail: marvin.buff@unibas.ch Mittwoch, 10-12 Uhr Clemens Büchner E-Mail: clemens.buechner@unibas.ch Dienstag 14-16 Uhr Eddie Joseph E-Mail: eddie.joseph@unibas.ch Freitag 14-16 Uhr

Zeit & Ort Vorlesungen Mi 14:15-16:00 Uhr, Kollegienhaus Hörsaal 115 Do 14:15-16:00 Uhr, Kollegienhaus Hörsaal 116 Übungen Di 14:15-16:00, Pharmazentrum Raum U1075 Mi 10:15-12:00, Spiegelgasse 1, Computer-Labor U1.001 Fr 14:15-16:00, Pharmazentrum Raum U1075 Erster Übungstermin 2. März bzw. 6./7. März

Vorlesung im Web Vorlesungsseite http://informatik.unibas.ch/fs2018/ vorlesung-algorithmen-und-datenstrukturen/ Vorlesungsbeschreibung Folien Übungsblätter und -materialien Zusatzmaterial (nicht prüfungsrelevant) Anmeldung: https://services.unibas.ch/ Bitte registrieren Sie sich gleich heute, um alle kursrelevanten Informationen zu erhalten. Bitte tragen sie sich auch für eine Übungsgruppe ein

Vorlesungsmaterialien Vorlesungsmaterialien: Vorlesungsfolien (online) Lehrbuch vertiefendes Material auf Anfrage Lehrbuch Algorithmen von Robert Sedgewick und Kevin Wayne (Pearson Verlag, 4. Auflage)

Weitere nützliche Ressourcen Seite zum Buch: Algorithms, 4th edition: https://algs4.cs.princeton.edu/home/ Data Structures and Algorithms The Basic Toolbox von Kurt Mehlhorn und Peter Sanders (Springer Verlag) http://people.mpi-inf.mpg.de/~mehlhorn/toolbox.html Google, Wikipedia,...

Zielgruppe Zielgruppe: Bachelor Informatik (ab 2. Semester) Bachelor Computational Sciences (ab 2. Semester) Alle Studierenden mit Programmierkenntnissen sind herzlich willkommen. Voraussetzungen: Programmierung (Java)

Programmiersprachen Vorlesung: Hauptsächlich Python Vorteil: Kompakt und direkt, ideal für kleine Programme Übungen: Java oder Python (nach Ankündigung) Es werden keine Python-Kenntnisse vorausgesetzt!

Übungen Übungsaufgaben: evtl. Präsenzaufgaben (nicht zulassungsrelevant) Hausaufgaben (Theorie + Praxis) Übungstermine: Besprechung der Hausaufgaben Beantwortung von Fragen zum aktuellen Blatt Technische Hilfestellung (Java/Python, Programmierumgebung) evtl. Präsenz- und kleine Praxisaufgaben Teilnahme freiwillig - aber sehr empfohlen.

Übungen: Hausaufgaben Hausaufgaben: Aufgaben werden donnerstags online gestellt. Bearbeitung allein oder in Zweiergruppen (2 3) Abgabe freitags in Folgewoche (23:59) über Courses Besprechung in Übungsgruppe

Forum Fragen können im Forum auf Adam diskutiert werden. Idee: Kursteilnehmer helfen sich gegenseitig. Dozierende können auf Anfrage mithelfen. Erklären und helfen heisst lernen!

Prüfung schriftliche Prüfung Mo, 11. Juni 2018, 15:15-17:00 Uhr 8 Kreditpunkte Zulassung: 50% der Übungspunkte Note basiert nur auf Klausur keine Wiederholungsprüfung

Plagiate Plagiat (Wikipedia) Ein Plagiat ([... ] aus lateinisch plagiarius, deutsch Seelenverkäufer, Menschenräuber ) ist die Anmaßung fremder geistiger Leistungen. Dies kann sich auf die Übernahme fremder Texte oder anderer Darstellungen [... ], fremder Ideen [... ] oder beides gleichzeitig [... ] beziehen. Folge: 0 Punkte für Übungsblatt (beim ersten Mal) Nicht-Zulassung zur Prüfung (im Wiederholungsfall) Im Zweifelsfall: vorher klären, was (nicht) in Ordnung ist Aufgaben zu schwer? Wir helfen gerne!

Laptops

Fragen zur Organisation Fragen?

Algorithmen und Datenstrukturen Bestimmte Grundbausteine benötigt man immer wieder bei Programmierprojekten, z.b. Sortierverfahren Suchbäume Prioritätswarteschlangen kürzeste Pfade in Graphen... Wird oftmals durch Bibliotheken fertig bereitgestellt. Hier lernen Sie... wie das alles intern funktioniert. wie man den richtigen Baustein auswählt. Tricks und Kniffe für effiziente Programme. Methoden unabhängig von konkreter Programmiersprache

Algorithmen und Datenstrukturen Bestimmte Grundbausteine benötigt man immer wieder bei Programmierprojekten, z.b. Sortierverfahren Suchbäume Prioritätswarteschlangen kürzeste Pfade in Graphen... Wird oftmals durch Bibliotheken fertig bereitgestellt. Hier lernen Sie... wie das alles intern funktioniert. wie man den richtigen Baustein auswählt. Tricks und Kniffe für effiziente Programme. Methoden unabhängig von konkreter Programmiersprache

Algorithmen und Datenstrukturen Bestimmte Grundbausteine benötigt man immer wieder bei Programmierprojekten, z.b. Sortierverfahren Suchbäume Prioritätswarteschlangen kürzeste Pfade in Graphen... Wird oftmals durch Bibliotheken fertig bereitgestellt. Hier lernen Sie... wie das alles intern funktioniert. wie man den richtigen Baustein auswählt. Tricks und Kniffe für effiziente Programme. Methoden unabhängig von konkreter Programmiersprache

Beispiel: Sortieralgorithmen Aufgabe: Bringe Sequenz von Elementen in aufsteigende Reihenfolge, z.b. Eingabe [5, 9, 3, 5] Ausgabe [3, 5, 5, 9] 1960er Jahre (und noch lange danach): ein Viertel der kommerziell verbrauchten Rechenzeit für Sortiervorgänge Naiver Algorithmus: Selectionsort

Selectionsort: Informell 0 1 2 3 4 5 6 7 n = 8 Finde kleinstes Element an Positionen 0,..., n 1 und tausche es an Position 0 Finde kleinstes Element an Positionen 1,..., n 1 und tausche es an Position 1... Finde kleinstes Element an Positionen n 2,..., n 1 und tausche es an Position n - 2

Selectionsort: Beispiel 3 7 2 9 7 1 4 5 1 7 2 9 7 3 4 5 1 2 7 9 7 3 4 5 1 2 3 9 7 7 4 5 1 2 3 4 7 7 9 5 1 2 3 4 5 7 9 7 1 2 3 4 5 7 9 7 1 2 3 4 5 7 7 9

Sortieralgorithmen: Laufzeit

Sortieralgorithmen: Laufzeit geschickter Algorithmus

Sortieralgorithmen: Laufzeit geschickter Algorithmus geschickte Datenstruktur

Der Kurs Algorithmen und Datenstrukturen

Inhalt dieser Veranstaltung Sortieren Komplexitätsanalyse Fundamentale Datenstrukturen A&D Suchen Graphen Strings Weiterführende Themen

Inhalt dieser Veranstaltung Sortieren Komplexitätsanalyse Fundamentale Datenstrukturen A&D Suchen Graphen Strings Weiterführende Themen