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 SA-2021

    Title

    French Algorithmique
    German Algorithmik
    English Algorithmics

    Schedules and rooms

    Summary schedule Thursday 13:15 - 17: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
    Assistants
    • Aliu Albin
    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.

    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
    23.09.2021 13:15 - 17:00 Cours PER 21, Room C140
    30.09.2021 13:15 - 17:00 Cours PER 21, Room C140
    07.10.2021 13:15 - 17:00 Cours PER 21, Room C140
    14.10.2021 13:15 - 17:00 Cours PER 21, Room C140
    21.10.2021 13:15 - 17:00 Cours PER 21, Room C140
    28.10.2021 13:15 - 17:00 Cours PER 21, Room C140
    04.11.2021 13:15 - 17:00 Cours PER 21, Room C140
    11.11.2021 13:15 - 17:00 Cours PER 21, Room C140
    18.11.2021 13:15 - 17:00 Cours PER 21, Room C140
    25.11.2021 13:15 - 17:00 Cours PER 21, Room C140
    02.12.2021 13:15 - 17:00 Cours PER 21, Room C140
    09.12.2021 13:15 - 17:00 Cours PER 21, Room C140
    16.12.2021 13:15 - 17:00 Cours PER 21, Room C140
    23.12.2021 13:15 - 17:00 Cours PER 21, Room C140
  • Assessments methods

    Written exam - SA-2021, Session d'hiver 2022

    Date 03.02.2022 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

    Comment

    Written ONLINE exam - COVID-19

    Open book exam

     

    Written exam - SP-2022, Autumn Session 2022

    Date 06.09.2022 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

    Comment

    Open book exam

     

  • 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/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: 2015_1/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 Bioinformtics 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
    Prerequisite to the MSc in Computer science > Advanced courses in Computer Science (Bachelor level)