Algorithmics

  • Teaching

    Details

    Faculty Faculty of Science and Medicine
    Domain Computer Science
    Code UE-SIN.03023
    Languages English
    Type of lesson Lecture
    Level Bachelor
    Semester AS-2022

    Title

    French Algorithmique
    German Algorithmik
    English Algorithmics

    Schedules and rooms

    Summary schedule Tuesday 08:15 - 12:00, Hebdomadaire (Autumn semester)
    Struct. of the schedule 2 x 2 Std. pro Woche während 14 Wochen
    Contact's hours 56

    Teaching

    Responsibles
    • Ries Bernard
    Teachers
    • Ruffieux Simon
    • Teran Tamayo Luis Fernando
    Description

    In this course, we teach the main principles of algorithmic design, study classic algorithmic problems and introduce the most important algorithms for solving them.

    Algorithmic design principles are general approaches for developing algorithms. In particular, we consider recursive and inductive methods, divide-and-conquer, backtracking and dynamic programming.

    Over the years, a number of algorithmic problems have established themselves as classical problems of computer science, and elegant data structures and algorithms have been developed to solve these problems. In this course, we consider the following problems, data structures and algorithms:

    • Sort: merge sort and quicksort
    • Search: symbol tables, binary search trees, balanced search trees, hash tables
    • Graphs: spanning trees, shortest paths, maximum flows
    • Strings: String search, tries, regular expressions, data compression

    Applications from practice illustrate the concepts.

    Training objectives

    The students gain a basic understanding of the design and analysis of data structures and algorithms.

    Condition of access

    Basic programming skills, particularly in Java

    Comments

    In general, the course consists of two hours of lecture followed by two hours of classroom exercises, which are overseen by the teachers and their assistants.

    Registration to the cours AND exams is mandatory and does not automatically happen if you are registered to a class. Please observe the deadlines of the faculty of science and medicine.

    Thank you for registering as well on Moodle: https://moodle.unifr.ch/course/view.php?id=268453

    Softskills No
    Off field No
    BeNeFri Yes
    Mobility Yes
    UniPop No

    Documents

    Bibliography
    • Textbooks
      • (mandatory) Algorithms, Robert Sedgewick und Kevin Wayne,
        Addison-Wesley, 4th edition, 2011
      • Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, The MIT Press, 3rd edition, 2009
  • Dates and rooms
    Date Hour Type of lesson Place
    20.09.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    27.09.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    04.10.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    11.10.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    18.10.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    25.10.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    08.11.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    22.11.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    29.11.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    06.12.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    13.12.2022 08:15 - 12:00 Cours PER 09, Room 0.108
    20.12.2022 08:15 - 12:00 Cours PER 09, Room 0.108
  • Assessments methods

    Written exam - AS-2022, Session d'hiver 2023

    Date 07.02.2023 10:00 - 12:00
    Assessments methods By rating
    Descriptions of Exams

    Selon modalité A de l'annexe du plan d'études en informatique

    Requirements

    Pass exercises

    Written exam - SS-2023, Autumn Session 2023

    Date 05.09.2023 14:00 - 16:00
    Assessments methods By rating
    Descriptions of Exams

    Selon modalité A de l'annexe du plan d'études en informatique

    Requirements

    Pass exercises

  • Assignment
    Valid for the following curricula:
    Additional Courses in Sciences
    Version: ens_compl_sciences
    Paquet indépendant des branches > Advanced courses in Computer Science (Bachelor level)

    Additional Programme Requirements to the MSc in Bioinformatics and Computational Biology [MA]
    Version: 2022_1/V_01
    Additional Programme Requirements to the MSc Bioinformatics and Computational Biology > Advanced courses in Computer Science (Bachelor level)

    Additional Programme Requirements to the MSc in Computer Science [MA]
    Version: 2022_1/V_01
    Supplement to the MSc in Computer science > Advanced courses in Computer Science (Bachelor level)

    Additional Programme Requirements to the MSc in Digital Neuroscience [MA]
    Version: 2023_1/V_01
    Supplement to the MSc in Computer science > Advanced courses in Computer Science (Bachelor level)

    Additional TDHSE programme in Computer Science
    Version: 2022_1/V_01
    Additional TDHSE Programme Requirements for Computer Science 60 or +30 > Programmes 60 or +30 > Additional Programme Requirements to Computer Science 60 > Additional TDHSE programme for Computer Science 60 (from AS2020 on)

    Ba - Business Informatics - 180 ECTS
    Version: 2020-SA_V02
    2nd year 60 ECTS > Algorithmics

    Computer Science 120
    Version: 2022_1/V_01
    BSc in Computer science, Major, 2nd-3rd year > Computer Science 2nd and 3th year (from AS2021 on)

    Computer Science 30
    Version: 2022_1/V_01
    Minor in Computer science 30 > Computer Science Minor 30 and 60 ECTS compulsory (from SA2020 on)

    Computer Science 60
    Version: 2022_1/V_01
    Minor in Computer Science 60 > Computer Science Minor 30 and 60 ECTS compulsory (from SA2020 on)

    Computer Science 50 [BSc_SI/BA_SI]
    Version: 2022_1/V_01
    BSc_SI/BA_SI, Computer science 50 ECTS, 1st-3rd years > BSc_SI/BA_SI, Computer Science, 2nd-3rd years, elective courses for 50 ECTS (from AS2020 on)

    Computer Science [3e cycle]
    Version: 2024_2/V_01
    Continuing education > Advanced courses in Computer Science (Bachelor level)

    Computer Science [POST-DOC]
    Version: 2015_1/V_01
    Continuing education > Advanced courses in Computer Science (Bachelor level)

    Computer Science [TDHSE] 60
    Version: 2022_1/V_01
    Minor in Computer Science (TDHSE) 60 > Computer Science Minor TDHSE 60 ECTS (from SA2021 on)

    Mathematics 30 for Mathematicians (MATH 30MA)
    Version: 2022_1/V_01
    Mathematics for mathematicians (MATH 30MA), minor 30 (from AS2020 on) > Mathematics, minor MATH 30MA, elective courses (from AS2018 on)

    Mathematics 30 for Physicists (MATH 30PH)
    Version: 2022_1/V_01
    Mathematics for physicists (MATH 30PH), minor 30 (from AS2020 on) > Mathematics, minor MATH 30PH, elective courses (from AS2018 on)

    MiBa - Computer Management - 60 ECTS
    Version: 2021-SA_V03
    Register in the option corresponding to your situation. > Standard > Min. 18 ECTS from the list > Algorithmics

    Pre-Master-Programme to the MSc in Bioinformatics and Computational Biology [PRE-MA]
    Version: 2022_1/V_01
    Prerequisite to the MSc in Bioinformatics and Computational Biology > Advanced courses in Computer Science (Bachelor level)

    Pre-Master-Programme to the MSc in Computer Science [PRE-MA]
    Version: 2022_1/V_01
    Prerequisite to the MSc in Computer science > Advanced courses in Computer Science (Bachelor level)

    Pre-Master-Programme to the MSc in Digital Neuroscience [PRE-MA]
    Version: 2023_1/V_01
    Pre-Master-Programme to the MSc in Digital Neuroscience > Advanced courses in Computer Science (Bachelor level)