next up previous
Next: About this document

MAC 122 - Princípios de Desenvolvimento de Algoritmos

Segundo semestre de 1997

Bibliografia

Textos principais

Wirth, N. (1986), Algorithms & Data Structures, Prentice Hall, Englewood Cliffs, NJ, 1986.

Texto principal do curso. Este livro utiliza a linguagem MODULA-2 para todos os seus exemplos de algoritmos.

Wirth, N. (1989), Algoritmos & Estruturas de Dados, Prentice Hall, Rio de Janiero, RJ, 1989.

Tradução do livro acima para o Português.

Ziviani, N. (1993), Projeto de Algoritmos, Pioneira, São Paulo, SP, 1993.

Livro que trata de vários assuntos discutidos no curso. Os algoritmos são descritos em Pascal e C.

Collins, W.J. (1986), Programação Estruturada com Estudos de Casos em Pascal, McGraw Hill, São Paulo, SP, 1986.

Livro de nível básico que pode ser utilizado como texto auxiliar.

Textos extensos

Knuth, D.E. (1968), The Art of Computer Programming, Vol. 1: Fundamental Algorithms, Addinson-Wesley, Reading, Mass., 1968.

Primeiro livro sobre estrutura de dados. Até hoje o texto mais completo sobre o assunto. Centenas de exercícios com sugestões, abrangendo desde exercícios fáceis até problemas em aberto.

Knuth, D.E. (1973), The Art of Computer Programming, Vol. 3: Sorting and Searching, Addison-Wesley, Reading, Mass., 1973.

Outro livro enciclopédico, na tradição `Knuthiana', desta vez sobre ordenação e busca, dois dos principais tópicos do curso.

Linguagens de programação

Arnold, K., Gosling, J., The Java Programming Language, Addison-Wesley, 1996.

Uma ótima introdução à linguagem de programação Java, escrita por participantes da criação da linguagem. Pode servir de apoio para o aprendizado da linguagem.

Jensen, K., Wirth, N. (1985), Pascal User Manual and Report, 3rd edition, Springer-Verlag, New York, 1985.

Contém a definição `oficial' da linguagem Pascal. É um livro muito interessante, escrito para o usuário com alguma experiência em programação.

Wirth, N. (1985), Programming in Modula-2, 3rd edition, Springer-Verlag, Berlin, 1985.

Outra introdução à programação dirigida para o usuário com aluguma experiência. Inclui a definição `oficial' da liguagem Modula-2. (Escrito pelo próprio autor da liguagem.)

Kernighan, B.W., Ritchie, D.M. (1978), The C Programming Language, Prentice Hall, Englewood Cliffs, NJ, 1978.

A definição `oficial' da liguagem C.

Estrutura de dados e análise de algoritmos

Cormen, T.H., Leiserson, C.E., Rivest, R.L. (1990), Introduction to Algorithms, McGraw-Hill, 1990.

Livro clássico de Análise de Algoritmos, de nível avançado.

Aho, A., Hopcroft, J.E. & Ullman, J.D. (1974), The Design and Analysis of Computer Algorithms, Addison-Wesley, Reading, Mass., 1974.

Contém as análises detalhadas dos algoritmos a serem estudados no curso. (Bibliografia clássica em análise de algoritmos.)

Baase, S. (1978), Computer Algorithms: Introduction to Design and Analysis, Addison-Wesley, Reading, 1978.

Um texto bastante didático e elementar.

Terada, R. (1991), Desenvolvimento de Algoritmos e Estrutura de Dados, McGraw-Hill, Makron, 1991.

Um texto em português sobre análise de algoritmos.

Horowitz, E. & Sahni, S. (1984), Fundamentals of Computer Algorithms, Computer Science Press, Rockville, Maryland, 1984.

Livro didático que trata de análise e desenvolvimento de algoritmos.

Horowitz, E. & Sahni, S. (1976), Fundamentals of Data Structure, Computer Science Press, Potomac, Maryland, 1976.

Texto bastante didático e completo sobre estrutura de dados.

Horowitz, E. & Sahni, S. (1984), Fundamentos de Estrutura de Dados, Campus, Rio de Janiero, RJ, 1984.

Versão do livro acima traduzida para o português.

Outros textos correlatos

Dijkstra, E.W. (1976), A discipline of Programming, Prentice-Hall, Englewood Cliffs, NJ, 1976.

Um texto sobre síntese de algoritmos corretos.

Gries, D. (1981), The Science of Programming, Springer-Verlag, New York, 1981.

Um texto avançado sobre síntese de algoritmos corretos. Muito bem escrito, contém excelentes exemplos.

Veloso, A.S. (1986), Tipos (Abstratos) de Dados, Programação, Especificação, Implementação, V Escola de Computação, Belo Horizonte, MG, 1986.

Um texto sobre tipos abstratos de dados.




next up previous
Next: About this document

Carlos Eduardo Ferreira
Wed Aug 6 09:25:18 EST 1997