Neuigkeiten
- [2017-12-07, fof] Prüfungen vom Januar und August 2017 online
Überblick
Wir behandeln gängige Datenstrukturen und Algorithmen, das Paradigma des objektorientierten Programmierens und Prinzipien für das Design und die Nutzung relationaler Datenbanken.
Es wird generell das formale Denken und Notwendigkeit zur Abstraktion, sowie die Bedeutung geeigneter Modellbildungen für die Informatik motiviert. Der Schwerpunkt der Vorlesung liegt auf der praktischen Informatik. Konkrete Themen sind u.a.: Komplexität von Algorithmen, Divide and Conquer-Prinzip, Rekursion, Sortieralgorithmen, Backtracking, Datenstrukturen (Listen, Stacks, Warteschlangen, binäre Bäume).
Die Konzepte der Vorlesung werden jeweils durch Algorithmen und Anwendungen motiviert und illustriert. Verwendete Programmiersprache in der Vorlesung und den praktischen Übungen ist Java.
Für das effiziente Praktizieren der vorgestellten Inhalte wird in den Übungen ein Online-Compiler mit Abgabesystem verwendet. Für den erleichterten Einstieg in die Programmierung mit Java kommt ein massgeschneidertes Online-Tutorial zum Einsatz.
Material
Die Vorlesungsunterlagen bestehen aus Vorlesungsfolien und Übungsunterlagen. Die Vorlesungsfolien sind auf Deutsch verfasst und stellen zusammen mit den Übungsblättern den Prüfungsstoff dar.Tutorial
Wir bieten diese Jahr erstmalig ein masgeschneidertes Online Java-Tutorial an, welches in der ersten Semesterwoche bearbeitet werden sollte und beim Einstieg in Java helfen sollte.
Übungsserien und Vorlesungsfolien
Die erste Übungsserie und die Folien zur Vorlesung werden in der ersten Vorlesungswoche aufgeschaltet.Termine
Vorlesung | Montag | 12:45-14:30 | HIL E 3 |
---|---|---|---|
Übungen | Donnerstag | 12:45-14:30, 14:45-16:30 | Verschiedene Räume |
Präsenzstunde | Donnerstag | 14:45-15:30 | HCI D 6 |
Zeitplan, Folien und Übungen
Dies ist ein Plan und als solcher unterliegt er Änderungen -- auch und insbesondere nach Semesterbeginn.
Woche | Datum | Thema | Vorlesungen | Programme | Übungen |
---|---|---|---|---|---|
1 | 20.02. | Einführung Überblick, der universelle Computer (Turing Maschine), Euklidischer Algorithmus, Erstes Java Programm, Java Klassen, von Pascal nach Java, der Euklidische Algorithmus in Java |
Handout I
(Overlays) Clickerfrage Pascal2Java |
[Hello World] [Simple Euklid] [Euklid mit I/O] |
Exercise 1
Solution 1 (Slides) |
2 | 27.02. | Komplexität Random Access Machine Model, Effizienz von Algorithmen, Asymptotik: O-Notation, Omega, Theta Java I Namen und Bezeichner, Variablen, Zuweisungen, Konstanten, Datentypen, Operationen, Auswertung von Ausdrücken, Konversion, Kontrollfluss Einfache Monte-Carlo Simulation |
Handout II
(Overlays) Clickerfrage |
[CelsiusToFahrenheit] [LifeOfPi] |
Exercise 2
Solution 2 (Slides) |
3 | 06.03. |
Java II Arrays, Strings, Referenzen, Simulation eines unfairen Würfels und einfache MCMC Wettersimulation Java III Methoden, Pass by Value |
Handout III
(Overlays) Clickerfrage |
[CountNumbers] [StringEquals] [Würfel] [Wetter] [Keksrechner] |
Exercise 3
Solution 3 (Slides) |
4 | 13.03. | Java IV Rekursion, Algorithmen I Suchen und Auswahl |
Handout IV
(Overlays) Clickerfrage |
[TowersOfHanoi] [Simple Recursions] |
Exercise 4
Solution 4 (Slides) |
5 | 20.03. |
Java V Ausnahmen (Exceptions) Algorithmen II Sortieren |
Handout V
(Overlays) Clickerfrage |
[Partition] [KeksrechnerMitExceptions] [ExceptionsBeispiele] |
Exercise 5
Solution 5 (Slides) |
6 | 27.03. |
Java VI Klassen |
Handout VI
(Overlays) Clickerfrage |
[Erdbebendaten] |
Exercise 6
Solution 6 (Slides) |
7 | 03.04. |
Datenstrukturen: Verkettete Listen |
Handout VII
(Overlays) Clickerfrage |
[SortedList] |
Exercise 7
Solution 7 (Slides) |
8 | 10.04. | Datenstrukturen: Hashtabellen |
Handout VIII
(Overlays) Clickerfrage zum Üben |
[HashTable(LinearProbing)] |
Exercise 8
Solution 8 (Slides) |
-- | 17.04. | --- Ostern --- | --- | --- | --- |
-- | 24.04. | --- Sechseläuten --- | --- | --- | Zwischenprüfung |
-- | 01.05. | --- Tag der Arbeit --- | --- | --- |
Nachbesprechung der Zwischenprüfung:
Midterm Informatik 2 2017 |
9 | 08.05. |
Dynamische Datenstrukturen II Bäume, Binäre Suchbäume, Heaps |
Handout IX
(Overlays) Clickerfrage |
[Binary Search Tree] [Binary Heap] |
Exercise 9
Solution 9 (Slides) |
10 | 15.05. | Graphen und Dijkstra's Shortest Path Algorithmus |
Handout X
(Overlays) Clickerfrage |
Exercise 10
Solution 10 (Slides) |
|
11 | 22.05. |
Datenbanksysteme: Das Entity RelationShip Modell, das Relationale Modell und SQL Einführung, Entity-Relationship Modell, Funktionalitäten, Formalismus des Relationalen Modells, Transformation des ER-Modells, Relationale Algebra: Selektion, Projektion, kartesisches Produkt, Umbenennung und Join |
Handout XI
(Overlays) |
Exercise 11
Solution 11 (Slides) |
|
12 | 29.05. |
Datenbanksysteme: SQL Einfache SQL-Anfragen, Anfragen über mehrere Relationen Aggregatfunktionen und Gruppierung, Geschachtelte Anfragen, Datendefinition |
Handout XII
(Overlays) |
Uni Datenbank Welt Datenbank |
Übungen
Einschreibung für die Übungen
Die Einschreibung zum Übungssystem erfolgt online. Weitere Informationen während der ersten Vorlesung.
Orte und Zeiten
Die Übungsgruppen sind derzeit wie folgt zugeteilt:Zeit | Assistent | Ort | Sprache |
---|---|---|---|
Donnerstag 13-15 | Max Rossmannek | HIT F 12 | deutsch |
Donnerstag 13-15 | Patrick Gruntz | HIT F 13 | deutsch |
Donnerstag 13-15 | Giuseppe Accaputo | HIT F 31.1 | deutsch |
Donnerstag 15-17 | Tobias Klenze | HCI D 4 | deutsch |
Donnerstag 15-17 | Thilo Weghorn | HCI D 6 | deutsch |
Chefassistenz
David SidlerLiteratur
Wir versuchen, den Kurs grundsätzlich selbsterklärend zu gestalten. Trotzdem lohnt sich es sich natürlich immer, auch andere Quellen heranzuziehen.- Hanspeter Mössenböck, Sprechen Sie Java?, dpunkt Verlag, 5. Auflage 2014.
- Robert Sedgewick, Kevin Wayne, Einführung in die Programmierung mit Java. Pearson, 2011
- Thomas Ottmann, Peter Widmayer, Algorithmen und Datenstrukturen, Springer, auch online
- T. Cormen, C. Leiserson, R. Rivest, C. Stein, Algorithmen - Eine Einführung, Oldenbourg, 2010
- Kemper, Eickler: Datenbanksysteme: Eine Einführung. Oldenbourg Verlag, 9. Auflage, 2013
Zur Prüfung
Modus
Prüfungsstoff für die Endprüfung, welche in der Prüfungssession Sommer 2017 stattfinden wird, schliesst Vorlesungsinhalt und Übungsinhalte ein.
Die Prüfung ist schriftlich. Erlaubte Hilfsmittel: Vier A4 Seiten (zwei A4 Blätter), handgeschrieben oder min. Fontgrösse 11 Pkt.
Vergangene Prüfungen
-
Prüfung August 2017
Prüfung August 2017: Lösung
-
Prüfung Januar 2017
Prüfung Januar 2017: Lösung
-
Midterm Informatik 2 2017
Midterm Informatik 2 2017: Lösung
-
Self-Assessment II 2017
Self-Assessment II 2017: Lösung
-
Self-Assessment I 2017
Self-Assessment I 2017: Lösung
-
Prüfung August 2016
Prüfung August 2016: Lösung
-
Prüfung Februar 2016
Prüfung Februar 2016: Lösung
-
Prüfung August 2015
Prüfung August 2015: Lösung
-
Prüfung Januar 2015
Prüfung Januar 2015: Lösung
-
Prüfung August 2014
Prüfung August 2014: Lösung