Algorithms, programming, and data representation



Zeit/Ort n.V.

Learning how to program in English and focus on Python

  • Mo 9:15 - 10:45, Raum Live-Stream (außer vac) ICS
  • Di 9:15 - 10:45, Raum H7 (außer vac) ICS


Topics - Programming and computing basics - Data structures - Object orientation - Python basic knowledge - Computational Complexity - Basic algorithms Students will solve object-oriented programming tasks in the Python programming language illustrate program structures with the help of a subset of the Unified Modelling Language compare the efforts of different algorithms in terms of runtime and memory requirements implement basic combinatorial algorithms, especially search and sort algorithms, binary trees and basic graph algorithms understand and use recursion as a link between mathematical problem descriptions and programming implementation translate recursive problem descriptions into iterative ones plan and process programming tasks in such a way that they are completed on time. Syllabus: L01 Motivation and Logistics L02 Introduction: What does a Computer do L03 Data Representation and Boolean Algebra L04 Floating Point numbers L05 Memory Organisation L06 Branching and Iterations L07 Decomposition, Abstraction, and Functions, Tuples, Lists, etc. L08 Recursion and Dictionaries L09 Testing, Debugging, Exceptions, and Assertions L10 Object Oriented Programming L11 Classes and Inheritance L12 Program efficency I L13 Program efficency II L14 Searching and Sorting L15 version management and git L16 API and Libraries L18 Graphs and graph algorithms L19 Bellman-Ford L20 Dijkstra L21 Dynamic Programming L21 Hashtables R01 Revision Q&A

Zusätzliche Informationen

Erwartete Teilnehmerzahl: 800