# Introduction to Computer Science for Engineers

##### Winter 


##### (in German: Introduction to Computer Science for Engineers )

<table bgcolor="#7FB3D9" border="1" id="bkmrk-%5Btitle%5D" style="width: 100%; border-collapse: collapse; border-width: 1px; border-style: none;"><colgroup><col style="width: 100%;"></col></colgroup><tbody><tr style="background-color: rgb(235, 243, 249);"><td>##### <span style="color: rgb(0, 104, 180);">**Module-ID:** </span><span style="color: rgb(0, 104, 180);">**FIN-INF-120440** </span>

</td></tr></tbody></table>

<table bgcolor="#7FB3D9" border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 14.2515%;"></col><col style="width: 14.2515%;"></col><col style="width: 13.061%;"></col><col style="width: 15.442%;"></col><col style="width: 14.2515%;"></col><col style="width: 14.2515%;"></col><col style="width: 14.2515%;"></col></colgroup><tbody><tr><td class="align-center" style="border: 5px solid rgb(255, 255, 255);"><span style="color: rgb(61, 61, 61);">**Abbreviation**</span>

<span style="color: rgb(61, 61, 61);">ICSE </span>

</td><td class="align-center" style="border: 5px solid rgb(255, 255, 255);"><span style="color: rgb(61, 61, 61);">**Credit Points**</span>

<span style="color: rgb(61, 61, 61);">6 </span>

</td><td class="align-center" style="border: 5px solid rgb(255, 255, 255);"><span style="color: rgb(61, 61, 61);">**Semester**</span>

<span style="color: rgb(61, 61, 61);">Winter </span>

</td><td class="align-center" style="border: 5px solid rgb(255, 255, 255);"><span style="color: rgb(61, 61, 61);">**Term**</span>

<span style="color: #3d3d3d;">starting at 1. </span>

</td><td class="align-center" style="border: 5px solid rgb(255, 255, 255);">**<span style="color: rgb(61, 61, 61);">Duration</span>**

<span style="color: rgb(61, 61, 61);">1 Semester </span>

</td><td class="align-center" style="border: 5px solid rgb(255, 255, 255);"><span style="color: rgb(61, 61, 61);">**Language**</span>

<span style="color: rgb(61, 61, 61);">english</span>

</td><td class="align-center" style="border: 5px solid rgb(255, 255, 255);"><span style="color: rgb(61, 61, 61);">**Level**</span>

<span style="color: rgb(61, 61, 61);">Bachelor </span>

</td></tr></tbody></table>

<table border="1" id="bkmrk-verantwortung%3A-verwe" style="border-collapse: collapse; width: 100%; height: 124.8px; border-width: 1px; border-style: none;"><colgroup><col style="width: 24.7879%;"></col><col style="width: 75.2121%;"></col></colgroup><tbody><tr style="height: 35.4px;"><td style="height: 35.4px;">**Link:**</td><td style="height: 35.4px;">[ LSF](https://lsf.ovgu.de/qislsf/rds?state=wsearchv&search=1&subdir=veranstaltung&veranstaltung.semester=20262&veranstaltung.dtxt=Introduction+to+Computer+Science+for+Engineers&P_start=0&P_anzahl=30&P.sort=veranstaltung.dtxt&_form=display "Introduction to Computer Science for Engineers")</td></tr><tr><td>**Limited accessability:**</td><td>false </td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">**Responsibility:**</td><td style="height: 29.8px;">Dr. Christian Braune </td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">**Lecturer:**</td><td style="height: 29.8px;">Dr. Christian Braune </td></tr><tr><td>**Classes:**</td><td>- Lecture *Introduction to Computer Science for Engineers*
- Exercise class *Introduction to Computer Science for Engineers*

 </td></tr><tr style="height: 29.8px;"><td style="height: 29.8px;">**Applicability in curriculum:**</td><td style="height: 29.8px;">- M.Sc. DE: Grundlagen Informatik  
- M.Sc. DE: Informatik Grundlagen (SPO 2027)  
  
</td></tr></tbody></table>

**Intended learning outcomes:** Students who finish this course

- know the basic principles of programming in an imperative, object-oriented programming language
- understand that design of an algorithm can impact its runtime
- know some of the most commonly used data structures and what their respective advantages and disadvantages are

  
**Content:** Introduction to:

- imperative programming paradigm
- basic concepts of object-oriented programming
- programming in a commonly used programming language (e.g. Python)
- generic programming
- fundamental data structures: 
    - trees (binary trees, search-trees and self-balancing search trees)
    - hash tables
    - graphs
- abstract data types: lists, stacks, queues
- main algorithms for fundamental tasks such as sorting and searching
- methods to observe algorithm complexity or performance (Big-O notation).
- fundamental types of algorithm design paradigms: Divide-and-Conquer, Greedy, Backtracking and Searching, and Dynamic Programming

**Workload:** 180 h (70 h contact hours + 110 h complementary reading and realization of the exercises/assignments)

<table border="1" id="bkmrk-studien-%2Fpr%C3%BCfungslei" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 32.0641%;"></col><col style="width: 34.9204%;"></col><col style="width: 33.0155%;"></col></colgroup><tbody><tr><td>**Pre-examination requirements:**</td><td>**Type of examination:**</td><td>**Teaching method / lecture hours per week (SWS):**</td></tr><tr><td>Prerequisites for admission: successful completion of assignments (voting &amp; assessment). Details will be explained during the first lecture.

</td><td>Written examination, 120 min

</td><td>Lecture (2 SWS) Exercise (2 SWS)

</td></tr></tbody></table>

<table border="1" id="bkmrk-voraussetzungen-nach" style="font-family: var(--font-body); font-size: 14px; width: 100%;"><colgroup><col style="width: 50%;"></col><col style="width: 50%;"></col></colgroup><tbody><tr><td>**Prerequisites according to examination regulations:**</td><td>**Recommended prerequisites:**</td></tr><tr><td>keine

</td><td></td></tr></tbody></table>

<table border="1" id="bkmrk-medienformen%3A-litera" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 50%;"></col><col style="width: 50%;"></col></colgroup><tbody><tr><td>**Media:**</td><td>**Literature:**</td></tr><tr><td></td><td>Computer Science - An Interdisciplinary Approach, R. Sedgewick and K. Wayne, Addison-Wesley, 2016, ISBN 0-13-407642-7 Algorithms, 4th Edition, R. Sedgewick and K. Wayne, Addison-Wesley, 2011, ISBN 0-321-57351-X Data Structures and Algorithm in Java, 6th Edition, M.T. Goodrich and R. Tamassia and M.H. Goldwasser, Wiley, 2014, ISBN 1-118-77133-4

</td></tr></tbody></table>

**Comments:**