Publication in the Diário da República: Despacho n.º 7795/2021 - 09/08/2021
6 ECTS; 1º Ano, 2º Semestre, 42,0 PL + 28,0 TP , Cód. 911240.
Lecturer
- Pedro Daniel Frazão Correia (1)(2)
(1) Docente Responsável
(2) Docente que lecciona
Prerequisites
Concepts of programming and algorithms. Elementary knowledge of C.
Objectives
Master the C programming language. Implement and use elementary linear and hierarchical data structures and basic sorting algorithms. Learn to classify algorithms according to their execution time.
Program
C language: pointers; passing parameters to functions; structures; dynamic memory. ADTs, Lists, Queues, Stacks, algorithms, Big-O notation, selection sort, bubble sort, insertion sort, binary trees.
Evaluation Methodology
Continuous assessment:
- Practical Exercises (20%)
- Written Test (30%)
- Practical assignment (50%).
Other periods of examination:
- Written exam (40%)
- Practical assignment (60%).
All Assessment Periods:
- Minimum marks: Tests and Examinations 7 out of 20; Practical assignments 10 out 20.
Bibliography
- Adrego da Rocha, A. (2014). Estruturas de Dados e Algoritmos em C. PT: FCA
- Damas, L. (1999). Linguagem C. Portugal: FCA
- Rivest, R. e Stein, C. e Leiserson, C. e Cormen, T. (2009). Introduction to Algorithms, Third Edition. USA: MIT Press
- Sedgewick, R. (1997). Algorithms in C, Parts 1-4 Fundamentals,Data Structures, Sorting, Searching. USA: Addison-Wesley
- W. Kernighan, B. e Ritchie, D. (1988). The C Programming Language. USA: Pearson
Teaching Method
Lectures, laboratory involving problem solving and consolidation of knowledge using the computer; Tutorial support.
Software used in class