Informatik und Kommunikationssysteme
- Zulassung : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/zulassung/
- Ausbildungsprogramm : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/ausbildungsprogramm/
- Studienaufbau : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/studienaufbau/
- Berufliche Perspektiven : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/berufliche-perspektiven/
- Mobilität : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/mobilitat/
- Personen : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/personen/
Informatik und Kommunikationssysteme : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/
- Zulassung : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/zulassung/
- Ausbildungsprogramm : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/ausbildungsprogramm/
- Studienaufbau : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/studienaufbau/
- Berufliche Perspektiven : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/berufliche-perspektiven/
- Mobilität : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/mobilitat/
- Personen : /de/ausbildung/bachelor/informatik-und-kommunikationssysteme/personen/
Ausbildungsprogramm
Studiengang:
Informatik und Kommunikationssysteme
Vertiefung:
Software Engineering
Module: Computer-Grundlagen
Kursbeschreibung
Zum Modul-
Angestrebte Kompetenzen und Lernziele
Dieses Modul vermittelt fundierte Grundlagen der Programmierung. Am Ende des Kurses kann der Student / die Studentin:
- ein Informatik-Problem analysieren und einen Algorithmus entwerfen um es zu lösen.
- komplexe Datenstrukturen und nicht-triviale Algorithmen schreiben und verwenden.
- die theoretische Komplexität eines Programms analysieren und sie experimentell verifizieren.
- mit geeigneten Formalismen (Skizzen, Pseudo-Code, ...) auf abstrakter Ebene arbeiten, unter Berücksichtigung des Unterschieds zwischen Spezifikation und Implementierung.
- eine Software-Entwicklungsumgebung und eine imperative, objektorientierte Programmiersprache verwenden.
-
Kursinhalte
- Begriff ''Algorithmus'' und Komplexitätsanalyse.
- Abstrakte Datentypen, Fallstudien (Stack, Queue, verketteten Liste, Set, Hash-Tabellen, Bitset, Warteschlangen mit Prioritäten, Einführung in Bäume und Graphen).
- Programmiertechniken (Rekursion, Verkettung, dynamische Programmierung), Fehlerbehandlung, Verallgemeinerung, probabilistische Algorithmen, Backtracking-Beispiel).
- Einige klassischen Algorithmen (Sortierung, Binärsuche, Zufallszahlen, Hash-Funktionen, RSA-Kryptographie, ...).
- Ansätze zur Problemlösung, Programm-Spezifikation durch Vor- / Nachbedingungen, Programmtests, systematische Fehlerbekämpfung, numerische Probleme in der Programmierung, Messung der Ausführungszeit.
Unterrichtsform
Vorlesungen inkl. Übungen
16 Unterrichtseinheiten
Laborarbeit
64 Unterrichtseinheiten
Classe inversée de type I, avec vidéos
16 Unterrichtseinheiten
Travail personnel
97 Unterrichtseinheiten
Schlussprüfung
schriftlich (120 Min.)
Kursbeschreibung
Gültigkeit
2024-2025
Studienjahr
1. Jahr
Semester
Frühling
Programm
Französisch,Zweisprachig
Studiengang
Informatik und Kommunikationssysteme
Kurssprache
Deutsch
Code
B1C-ALGO-S
Niveau
Mittelstufe
Typ
Grundlagenkurs
Art der Ausbildung
Bachelor
Lernkontrolle
- Schlussprüfung Lernkontrolle Berichte, Berichte
- Prüfung: schriftlich (120 Min.)
Notenberechnung / Validierungsmodalitäten
SemesterNote = Durchschnitt der schriftliche Prüfungen +/- eventuell kleine Anpassung gemäss Praktikumsevaluierung. SchlussNote = (SemesterNote + PrüfungsNote) / 2.
Bibliografie
- Algorithms (4th Edition) von Robert Sedgewick und Kevin Wayne. ISBN: 978-0321573513
- Mark Allen Weiss : ''Data Structures & Problem Solving Using Java''. Addison Wesley. 4th Edition, 2010. ISBN 0321546229.
Dozierende
Frédéric Bapst, Andreas Fischer, Rudolf Scheurer