Algorithms and Programming II

Teaching Methodologies

Classes will be taught under theoretical and practical, in computer rooms. The expository methodology is used for the presentation of the concepts of the course, supported by practical experimentation by performing exercises applying communicated concepts in computers.

Learning Results

This course Algorithms and Programming II is defined as the degree in structural IT Management since it allows the acquisition of fundamental knowledge and understanding of determinants in subsequent courses. The aim is to achieve this course with the following objectives:
– Consolidation of structured programming methodology using the C language;
– Know how to properly use pointers, files, data structures;
– Understanding of the fundamental concepts associated with the various types of dynamic data structures and algorithms that can be applied to each.

Program

1. Pointers
1.1. Fundamentals
1.2. Functions and passing by reference
1.3. Pointers and vectors
1.4. Pointer arithmetic
1.5. Pointers to characters
1.6. Reserve dynamic memory
1.7. Vectors of pointers and pointers to pointers
1.8. Passing pointers to functions
1.9. Functions that return pointers
2. Data Structures
2.1. Fundamentals
2.2. Defining data types
2.3. Vectors of structures
2.4. Passing structures to functions
2.5. Functions that return structures
2.6. Pointers to structures
3. Files
3.1. introduction
3.2. File Access
3.3. File type
3.4. Manipulating
3.5. Error management file access
3.6. Research data files
4. Dynamic structures
4.1. sequential structures
4.1.1. Lists
4.1.1.1. Simply connected
4.1.1.2. Doubly linked
4.1.2. Batteries
4.1.3. Queues
4.2. Structures nonsequential
4.2.1. Trees

Curricular Unit Teachers

Internship(s)

NAO

Bibliography

1. L. Damas (2006), “Linguagem C”, FCA Editora.
2. T. Cormen, C. Leiserson, R. Rivest, C. Stein. (2001), “Introduction to Algorithms”, MIT Press.
3. Brian W. Kernighan, Dennis M. Ritchie (2006), “The C Programming Language Second
Edition”, New Jersey:
Prentice Hall PTR, ISBN: 0131103628.
4. R. Sedgewick (1997), “Algorithms in C: Fundamentals, Data Structures, Sorting, Searching”, Pts. 14,
Addison
Wesley
5. Maureen Sprankle (2002), “Problem solving and programming principles 6a
ed.”, Prentice Hall.
6. M. A. Weiss (1997), “Data Structures and Algorithm Analysis in C”, Addison Wesley.
7. João Cortez, Henrique Mamede, “Introdução às Técnicas de Programação”, Editorial Presença.
8. Pedro João Valente Dias Guerreiro, “Elementos de Programação com C 3a
Edição Actualizada e
Aumentada”, FCA – Editora de informática, Lisboa, ISBN: 9727225101.
9. Joaquim P. Marques de Sá, “Fundamentos de Programação usando C, FCA – Editora de informática”, Lisboa.