MAB 241 Computação II
60 horas - 4 créditos
Pré-requisitos: Computação I - Recomendação: 3o período
60 horas - 4 créditos
Pré-requisitos: Computação I - Recomendação: 3o período
Programação estruturada utilizando linguagem imperativa (Pascal ou C). Técnicas para decomposição de programas em módulos: refinamentos sucessivos, programação top down. Recursos avançados das linguagens de programação: ponteiros, registros, arquivos. Algoritmos de ordenação e busca, recursão. Teste e depuração de erros. Estruturas de dados mais comuns:matrizes, listas encadeadas, árvores binárias. Noções de análise de algoritmos.
Capacitar o aluno a desenvolver, implementar, testar e depurar programas de computador mais complexos. Apresentar algoritmos fundamentais e estruturas de dados mais comuns.
UNIDADE I – Técnicas de desenvolvimento de programas estruturados
Programação top-down e refinamentos sucessivos.
Divisão em módulos
Teste e depuração
Documentação
UNIDADE II – Ponteiros e estruturas de dados
Registros
Estudo de ponteiros e suas aplicações
Memória dinâmica
Listas, pilhas e filas. Operações básicas como tipos abstratos de dados.
Implementação com alocação seqüencial.
Implementação com alocação encadeada.
UNIDADE III – Operações com arquivos de dados
Entrada e saída com arquivos texto.
Entrada e saída de dados binários.
Acesso seqüencial e aleatório
UNIDADE IV – Algoritmos
Algoritmos e funções recursivas
Algoritmos fundamentais de ordenação: seleção, bolha, quicksort, mergesort
Algoritmos de busca: seqüencial e binária
Introdução à análise da eficiência de algoritmos.
UNIDADE V – Árvores binárias
Conceitos básicos e definições
Árvores binárias de busca
Algoritmos de inserção, busca e remoção.
Árvores balanceadas.
BIBLIOGRAFIA:
[1] Jayme L. Szwarcfiter e Lilian Markenzon, “Estruturas de Dados e seus Algoritmos”, Editora LTC.
[2] Mizrahi, Victorine Viviane., Treinamento em linguagem C: Pearson, 1990.
[3] Kernighan, Brian W., C: A linguagem de programação: Campus, c1988.
[4] Nivio Ziviani, “Projeto de Algoritmos com Implementações em Pascal e C”, Thomson Pioneira, 2a. ed., 2004.
[5] Pohl, Ira, C++ for C programmers: Benjamin/Cummings Pub, 1989.
[6] Arciniegas, Fabio , C++ XML: Makron Books, 2002.