|
|
Module code: PIB-INF1 |
|
3V+1U (4 hours per week) |
5 |
Semester: 1 |
Mandatory course: yes |
Language of instruction:
German |
Assessment:
Written exam
[updated 24.02.2018]
|
PIB-INF1 (P221-0024) Applied Informatics, Bachelor, ASPO 01.10.2017
, semester 1, mandatory course
|
60 class hours (= 45 clock hours) over a 15-week period. The total student study time is 150 hours (equivalent to 5 ECTS credits). There are therefore 105 hours available for class preparation and follow-up work and exam preparation.
|
Recommended prerequisites (modules):
None.
|
Recommended as prerequisite for:
PIB-DB Databases PIB-INF2 Informatics 2 PIB-PA Project work PIB-PR2 Programming 2 PIB-PRA Work Experience Phase PIB-TI Theoretical Informatics PIB-WA Scientific Work PIB-WEB Principles of Web Development
[updated 07.11.2022]
|
Module coordinator:
Prof. Dr. Klaus Berberich |
Lecturer: Prof. Dr. Klaus Berberich
[updated 28.09.2016]
|
Learning outcomes:
After successfully completing this module, students will be able to formulate and analyze algorithms for solving simple problems. They will understand how numbers and characters are represented in a computer. They will be capable of converting between and computing in the underlying numeral systems. Students will be familiar with the basic concepts and rules of predictive logic and can apply them to determine the equivalence of two expressions. On the basis of the machine model Random Access Machine (RAM), students will learn the basic operations of a computer. They will be able to implement simple programs with the RAM commands, prove their correctness and determine their time and space complexity. Students will become familiar with basic algorithms (e. g. for searching and sorting) and will be able to combine them like building blocks to solve more complex problems. Based on these fundamental algorithms, students will be able to understand important solution strategies (e. g. divide and conquer algorithm, recursion and dynamic programming). Students will also learn about elementary data structures (e. g. linked lists and binary heaps) and will be able to use them appropriately depending on the situation.
[updated 24.02.2018]
|
Module content:
1. Introduction 2. Mathematical principles 2.1 Number systems 2.2 Boolean algebra 3. RAM as a machine model 3.1 Components 3.2 Program correctness 3.3 Program runtime 4. Algorithms 4.1 Pseudocode from a high-level programming language 4.2 Searching 4.3 Sorting 5. Data structures 5.1 Dynamic arrays 5.2 Linked lists 5.3 Binary heaps 5.4 Binary search trees 5.5 Hash tables
[updated 24.02.2018]
|
Teaching methods/Media:
Slides, RAMses as an interactive tool for learning RAM commands, theoretical exercises.
[updated 24.02.2018]
|
Recommended or required reading:
Cormen Thomas H., Leiserson Charles E., Rivest Ronald L. und Stein Clifford: Algorithmen - Eine Einführung, Oldenbourg , 2013 Gumm Hans-Peter und Sommer Manfred: Einführung in die Informatik, Oldenbourg Verlag, 2012 Sedgewick Robert und Wayne Kevin: Algorithmen und Datenstrukturen, Pearson Studium, 2014
[updated 24.02.2018]
|
Module offered in:
WS 2022/23,
WS 2021/22,
WS 2020/21,
WS 2019/20,
WS 2018/19,
...
|