UCL - Studies

Version française

Study programmes
First cycle
Second cycle
Third cycle
Faculties and entities
Access to studies
Academic calendar
Search
Simple
Detailed
Per course

Algorithmics and data structures [SINF1121]
[30h+30h exercises] 5 credits

Version française

Printable version

This course is taught in the 1st semester

Teacher(s):

Pierre Dupont

Language:

French

Level:

First cycle

>> Aims
>> Main themes
>> Content and teaching methods
>> Other information (prerequisite, evaluation (assessment methods), course materials recommended readings, ...)
>> Other credits in programs

Aims

- To design correct and efficient algorithms to solve well specified computational problems.

- To motivate the choice of appropriate data structures and algorithms.

- To implement data structures and algorithms in Java in a professional way.

- To apply object-oriented programming principles such as genericity, data abstraction, composition and reusability.

- To work efficiently in teams for the analysis, design, programming and documentation of the proposed solutions.

Main themes

- Computational complexity
- Specifications and object-oriented design
- Basic data structures (lists, trees, binary search trees): study of their abstract properties, practical representations, concrete applications and associated algorithms
- Introduction to data structures design pattersn
- Advanced data structures and algorithms: hash tables, heaps, balanced search trees, text processing techniques, dictionaries, graph representation and processing

Content and teaching methods

- Computational complexity
- Trees, binary search trees, AVL trees, multi-way search trees
- Dictionaries and hash tables
- Priority queues and heaps
- Graphs
- Text processing (suffix trees, pattern matching, compression algorithms)
- Design patterns in Java

Teaching method:
- problem based learning

Other information (prerequisite, evaluation (assessment methods), course materials recommended readings, ...)

- Prerequisites
(1) Significant programming experience in an object-oriented language such as Java and knowledge of elementary data structures (stacks, queues, lists)

OR

(1) LINF1150 Introduction à l'algorithmique et la programmation: 1ère partie B. LeCharlier
(2) LINF1251 Introduction à l'algorithmique et à la programmation : 2ème partie P. VanRoy

OR

(1) FSAC1650 Informatique T6

- References
(1) Goodrich et Tamassia, "Data Structures and Algorithms in Java, Third Edition" , John Wiley & Sons, 2004.
(2) Cormen T.H. et al. , "Introduction to Algorithms, Second Edition" , MIT Press, 2001. Brassard G. & Bratley P., "Fundamentals of Algorithms" , Prentice Hall, 1996.

- Modalités d'organisation
(1) Evaluation during the whole year
(2) Written exam at the end.

- Remarque:
Course Web Site: http://www.info.ucl.ac.be/notes_de_cours/LINF2121/

Other credits in programs

ECGE3DS/SC

Diplôme d'études spécialisées en économie et gestion (Master in business administration) (Supply Chain Management)

(5 credits)

Mandatory

FSA13BA

Troisième année de bachelier en sciences de l'ingénieur, orientation ingénieur civil

(5 credits)

MAP22

Deuxième année du programme conduisant au grade d'ingénieur civil en mathématiques appliquées

(5 credits)

MAP23

Troisième année du programme conduisant au grade d'ingénieur civil en mathématiques appliquées

(5 credits)

SINF13BA

Troisième année d'études de bachelier en sciences informatiques

(5 credits)

Mandatory

SINF1PM

Année d'études préparatoires au master en sciences informatiques (60 et 120)

(5 credits)

Mandatory



This site was created in collaboration with ADCP, ADEF, CIO et SGSI
Person in charge : Jean-Louis Marchand - Information : secretaire@fsa.ucl.ac.be
Last update :13/03/2007