Dennis Komm: Catalogue data in Autumn Semester 2019 |
Name | Prof. Dr. Dennis Komm |
Field | Algorithms and Didactics |
Address | Professur Algorithmen und Didaktik ETH Zürich, CAB F 10.1 Universitätstrasse 6 8092 Zürich SWITZERLAND |
Telephone | +41 44 632 82 23 |
dennis.komm@inf.ethz.ch | |
URL | https://people.inf.ethz.ch/dkomm/ |
Department | Computer Science |
Relationship | Associate Professor |
Number | Title | ECTS | Hours | Lecturers | |
---|---|---|---|---|---|
252-0852-00L | Foundations of Computer Science | 4 credits | 2V + 2U | L. E. Fässler, M. Dahinden, D. Komm | |
Abstract | Students learn to apply selected concepts and tools from computer science for working on interdisciplinary projects. The following topics are covered: modeling and simulations, introduction to programming, visualizing multi-dimensional data, introduction matrices, managing data with lists and tables and with relational databases, universal methods for algorithm design. | ||||
Learning objective | The students learn to - understand the role of computer science in science, - to control computer and automate processes of problem solving by programming, - choose and apply appropriate tools from computer science, - process and analyze real-world data from their subject of study, - handle the complexity of real-world data. | ||||
Content | 1. The role of computer science in science 2. Introduction to Programming with Python 3. Modeling and simulations 4. Introduction to Matrices with Matlab 5. Visualizing multidimensional data 6. Data management with lists and tables 7. Data management with a relational database | ||||
Lecture notes | All materials for the lecture are available at www.gdi.ethz.ch | ||||
Literature | L. Fässler, M. Dahinden, D. Komm, and D. Sichau: Einführung in die Programmierung mit Python und Matlab. Begleitunterlagen zum Onlinekurs und zur Vorlesung, 2016. ISBN: 978-3741250842. L. Fässler, M. Dahinden, and D. Sichau: Verwaltung und Analyse digitaler Daten in der Wissenschaft. Begleitunterlagen zum Onlinekurs und zur Vorlesung, 2017. | ||||
Prerequisites / Notice | This course is based on application-oriented learning. The students spend most of their time working through projects with data from natural science and discussing their results with teaching assistants. To learn the computer science basics there are electronic tutorials available. | ||||
252-0866-00L | Digital Medicine I: Introduction to Programming Only for Human Medicine BSc | 2 credits | 2G | H.‑J. Böckenhauer, D. Komm | |
Abstract | This lecture gives an introduction to programming in Python and an overview of basic problem solving strategies and design principles for efficient algorithms and data structures. | ||||
Learning objective | To learn basic principles of programming in Python and to apply them for implementing algorithmic approaches for solving simple computational problems. | ||||
Content | This lecture has two goals. On the one hand, an introduction to programming is given, using Python as a sample language. This introduction includes the basic programming principles such as truth values, variables, data types, conditional statements, loops, and functions. On the other hand, basic data structures (like stacks, queues, or search trees) and important concepts of algorithm design are presented and implemented in Python to efficiently solve basic algorithmic tasks on these data structures. The main focus lies on general-purpose design techniques for efficient algorithms, such as the greedy method, dynamic programming, or the divide and conquer strategy. These techniques are demonstrated with many examples from practice. | ||||
Lecture notes | All learning materials will be provided during the course. |