Programa122MC(lilian)
Programa
Revisão de conceitos no contexto da nova linguagem: funções, passagem de parâmetros, vetores, arquivos, registros, cadeias de caracteres, estruturas dinâmicas (ponteiros), e recursão. Apresentação de estruturas de dados clássicas, indicadas a seguir. Listas lineares: listas dinâmicas simples e duplamente encadeadas, listas circulares. Pilhas e Filas. Aplicações. Matrizes esparsas. Listas não lineares: árvores e árvores binárias. Representação de árvores. Árvores de busca e árvores balanceadas. Desenvolvimento de algoritmos sobre árvores binárias. Árvores não binárias: Árvores-B. Algoritmos e aplicações de Árvores-B. Grafos: conceitos e aplicações. Estruturas de dados para representação de grafos e algoritmos clássicos sobre grafos. Espalhamento (hashing) aberto e fechado, resolução de colisões..
Bibliografia básica
- TENEMBAUM, A.M. et alli Data Structures Using C, Prentice-Hall, 1990. (versão em Português: Estruturas de Dados Usando C, Makron Books 1995).
- ZIVIANI, N. Projeto de Algoritmos com Implementações em Pascal e C. 2a. Edição. Thompson, São Paulo, 2004.
Bibliografia complementar
- AHO, A.V.; HOPCROFT,J.E.; ULLMAN, J.D. Data Structure and Algorithms. Readings, Addison Wesley, 1982.
- CORMEN, T.H.; LEISERSON, C.E.; RIVEST, R.L. Introduction to Algorithms. 2nd Edition. MIT Press, 2001.
- DEITEL, H. M., DEITEL, P. J., C++ Como Programar, Bookman, 2001.
- GOODRICH, M.T.; TAMASSIA, R. Data Structures and Algorithms in C++. John Wiley & Sons, 2002.
- HOROWITZ,E.; SAHNI,S. Fundamentos de Estrutura de Dados, Rio de Janeiro, Campus, 1986.
- HOROWITZ,E.; SAHNI, S. Fundamentals of Data Structures in Pascal, Computer Science Press, 1990.
- KERNIGHAM, B. W., RITCHIE, D. M., The C Programming Language, Pearson Education, 1989.
- SZWARCFITER, J.L. Grafos e Algoritmos Computacionais. Editora Campus, 1983.
- SZWARCFITER, J.L. e Markenzon, L. Estruturas de Dados e seus Algoritmos. LTC Editora 1994.
- WIRTH, N. Algorithms and Data Structures, Englewood Cliffs, Prentice-Hall, 1986. (versão em Português: Algoritmos e Estruturas de Dados, Prentice Hall do Brasil, 1989).