5 ECTS credits
145 h study time

Offer 1 with catalog number 4013759ENR for all students in the 1st semester at a (E) Master - advanced level.

Semester
1st semester
Enrollment based on exam contract
Impossible
Grading method
Grading (scale from 0 to 20)
Can retake in second session
Yes
Taught in
English
Faculty
Faculteit Ingenieurswetenschappen
Department
Electronics and Informatics
Educational team
Bart Jansen (course titular)
Lubos Omelina
Activities and contact hours
24 contact hours Lecture
24 contact hours Seminar, Exercises or Practicals
36 contact hours Independent or External Form of Study
Course Content

This course introduces a basic repertoire of algorithms and data structures. These algorithms and datastructures constitute a solid basis for more advanced concepts introduced in other courses.

Among others, the following topics will be discussed in this course:

- Search in arrays, building linked and double linked lists, search in linked and double linked lists.

- Stacks, queues en priority queues.
- Methods for sorting arrays and linked lists.

- Methods to represent trees by means of linked lists and arrays; search in trees and methods for balancing trees.

- Graphs: methods for representing graphs; searching in graphs.

Both the theoretical foundations and concepts as well as the practical implementation in JAVA will be discussed.

Course material
Digital course material (Required) : Slides, programming assignments and required code are available, Canvas
Practical course material (Recommended) : Additional Study Material: any JAVA book.
Additional info

Slides, programming assignments and required code are available on pointcarre (http://pointcarre.vub.ac.be/). 

Additional Study Material: any JAVA book.

Learning Outcomes

Algemene competenties

The first goal of this course is to teach students a repertoire of basic algorithms and data structures which are required to solve a variety of programming problems. Students are expected to know, to be able to explain, to motivate and to compare the implementation and the time and memory requirements of these algorithms and data structures. A second goal of this course is to teach students to use the algorithms and data structures in concrete programs: students are expected to be able to implement the data structures and algorithms in JAVA. It is also expected that students can identify the data structures and algorithms best suited for solving particular computer problems and that students can combine these into a computer program solving the problem posed.

This course contributes to the following programme outcomes of the Master in Applied Computer Sciences:

MA_A: Knowledge oriented competence

1. The Master in Engineering Sciences has in-depth knowledge and understanding of exact sciences with the specificity of their application to engineering
4. The Master in Engineering Sciences can reformulate complex engineering problems in order to solve them (simplifying assumptions, reducing complexity)
6. The Master in Engineering Sciences can correctly report on research or design results in the form of a technical report or in the form of a scientific paper
11. The Master in Engineering Sciences can think critically about and evaluate projects, systems and processes, particularly when based on incomplete, contradictory and/or redundant information

MA_B:  Attitude

12. The Master in Engineering Sciences has a creative, problem-solving, result-driven and evidence-based attitude, aiming at innovation and applicability in industry and society

MA_C:  Specific competence

19. The Master in Applied Computer Sciences has knowledge of and is able to use advanced processing methods and tools for the analysis of (big) data in different  application domains
21. The Master in Applied Computer Sciences has a thorough knowledge of programming concepts and can apply them in smart systems of systems

 

Grading

The final grade is composed based on the following categories:
Written Exam determines 60% of the final mark.
PRAC Practical Assignment determines 40% of the final mark.

Within the Written Exam category, the following assignments need to be completed:

  • Written exam with a relative weight of 60 which comprises 60% of the final mark.

Within the PRAC Practical Assignment category, the following assignments need to be completed:

  • project with a relative weight of 40 which comprises 40% of the final mark.

Additional info regarding evaluation

Mode Assessment
The exam consists of two parts:
A first part is closed book and consists of a set of questions to assess whether the student knows, can explain, can motivate and can compare the concepts, the implementation and the time and memory requirements of the data structures and algorithms.
The second part is open book and consists of the implementation and the explanation of a small computer program which solves a stated problem using the library of algorithms and data structures developed during the seminar sessions.

Allowed unsatisfactory mark
The supplementary Teaching and Examination Regulations of your faculty stipulate whether an allowed unsatisfactory mark for this programme unit is permitted.

Academic context

This offer is part of the following study plans:
Master in Applied Sciences and Engineering: Applied Computer Science: Standaard traject
Master of Teaching in Science and Technology: ingenieurswetenschappen (120 ECTS, Etterbeek) (only offered in Dutch)