UnivIS
Informationssystem der Friedrich-Alexander-Universität Erlangen-Nürnberg © Config eG 
FAU Logo
  Sammlung/Stundenplan    Modulbelegung Home  |  Rechtliches  |  Kontakt  |  Hilfe    
Suche:      Semester:   
 
 Darstellung
 
Druckansicht

 
 
Modulbeschreibung (PDF)

 
 
Vorlesungsverzeichnis >> Technische Fakultät (TF) >>

Algorithms, programming, and data representation (AlgProgDat)10 ECTS
(englische Bezeichnung: Algorithms, programming, and data representation)

Modulverantwortliche/r: Bernhard Kainz
Lehrende: Bernhard Kainz, Johanna Müller, Mischa Dombrowski


Startsemester: WS 2022/2023Dauer: 1 SemesterTurnus: jährlich (WS)
Präsenzzeit: 120 Std.Eigenstudium: 180 Std.Sprache: Englisch

Lehrveranstaltungen:


Inhalt:

The lecture Algorithms, programming, and data representation is aimed at students with tech and math background and is one of the basic lectures in the field of computer science. In addition to an introduction to fundamental algorithms, (object-oriented) programming in Python, various data structures such as linked lists, trees and graphs are covered. Algorithms include recursion, sorting methods and graph algorithms, as well as O notation of algorithms.

Lernziele und Kompetenzen:

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: (L - lecture, C - coursework, T - tutorial)
L01 Motivation and Logistics L02 Introduction: What does a Computer do
C01 Explore local Anaconda and Google Colab

L03 Data Representation and Boolean Algebra
L04 Floating Point numbers
T01 Organization and Boolean Algebra
C02 Number Representations and Boolean Algebra in Python

L05 Memory Organisation
L06 Branching and Iterations
T02 Number Representations and Boolean Algebra
C03 Branching and Iterations

L07 Decomposition, Abstraction, and Functions, Tuples, Lists, etc.
L08 Recursion and Dictionaries
T03 Memory Organisation
C04 Recursion and Dictionaries

L09 Testing, Debugging, Exceptions, and Assertions
L10 Object Oriented Programming
T04 Decomposition, Abstraction, and Functions
C05 Testing, Debugging, Exceptions, and Assertions

L11 Classes and Inheritance
L12 Program efficency I
T05 Recursion
C06 Classes and Inheritance

L13 Program efficency II
L14 Searching and Sorting
T06 Object Oriented Programming
C07 Searching and Sorting

L15 Version management and git
L16 API and Libraries
T07 Program efficency
C08 APIs and Libraries

L18 Graphs and graph algorithms
L19 Bellman-Ford
T08 Searching and Sorting
C09 Searching and Sorting

L20 Dijkstra
L21 Graphs and Trees
T09 Graphs and Trees
C10 Graphs and Trees

L21 Dynamic Programming
L22 Hashtables
T10 Hashtables
C11 Hashtables

R01 Revision Q&A
R02 Revision Q&A
Confidence and social competence:
The students will

  • organize themselves independently into groups and coordinate the organizational and technical process of group work in consultation with each other

  • communicate and jointly develop solutions for theoretical questions and practical programming tasks within the framework of group tasks

  • plan and apply targeted measures for mutual quality assurance of the submitted solutions (check each other's group submissions)

  • are jointly responsible for the result of their group work, the evaluation of which applies equally to both group partners


Studien-/Prüfungsleistungen:

Algorithms, programming, and data representation (Prüfungsnummer: 219172)

(englischer Titel: Algorithms, programming, and data representation)

elektronische Prüfung mit MultipleChoice, Dauer (in Minuten): 120, benotet
weitere Erläuterungen:
Students of medical engineering as of FPO 2018 take the exam for the lecture Algorithms, programming, and data representation as a separate exam module. The exercise performance is completed as a separate module.
Prüfungssprache: Englisch

Erstablegung: WS 2022/2023, 1. Wdh.: SS 2023
1. Prüfer: Bernhard Kainz

UnivIS ist ein Produkt der Config eG, Buckenhof