BC1424 - Algoritmos e Estruturas de Dados I - Bac. Ciência da Computação (1º quad./2013)
Horários: 3a-feira das 19h às 21h (turma 1 prática) ou das 21h às 23h (turma 2 prática) e 5a-feira, das 21h às 23h (teoria)
Local: S. 311-2 (teórica); Lab. 409-2 (prática)
Critério de avaliação
- 1 prova P1 valendo 35% da nota da disciplina;
- 1 prova P2 valendo 35% da nota da disciplina;
- exercícios em laboratório valendo 30% da nota da disciplina.
Classificação de conceitos
A ≥ 8,5; B ≥ 7,0; C ≥ 5,5; D ≥ 4,5.
Recomendação
Processamento da Informação
Programa resumido
Introdução à linguagem C. Noções básicas sobre análise da complexidade de tempo de algoritmos. Estruturas de dados básicas: listas encadeadas, pilhas, filas e árvores. Busca e ordenação. Árvores de busca.
Bibliografia
Cormen T. H et al., "Algoritmos: Teoria e Prática". Rio de Janeiro: Editora Campus, 2ª edição, 2002.
Knuth D.E. "The Art of Computer Programming". vols. 1 e 3, Addison-Wesley, 1973.
Szwarcfiter, L. Markezon, "Estruturas de Dados e seus Algoritmos". Livros Técnicos e Científicos, 1994.
Ziviani N. "Projeto de Algoritmos com implementação em Pascal e C". São Paulo: Editora Thomson, 2ª edição, 2009.
Feofiloff P. "Algoritmos em Linguagem C". Editora Campus/Elsevier, 2009.
Bibliografia Complementar
Rodrigues P., Pereira P., Sousa M., "Programação em C++: Algoritmos e Estruturas de Dados" , FCA Editora de Informática, 2000.
Sedgewick, R. "Algorithms in C++" (Parts 1-4), Addison-Wesley, 3ª edição, 1998.
Tenenbaum, A. M., Langsam Y., Augenstein M. J. "Estruturas de Dados Usando C". Editora Pearson Makron Books
Drozdek Adam. "Estrutura de dados e Algoritmos em C++". Thomson Learning, 2002.
Jaime Evaristo. "Aprendendo a Programar Programando na Linguagem C - Para Iniciantes". Disponível em: http://professor.ic.ufal.br/jaime/
Datas Importantes
06/06: prova P1
04/07: prova P2
11/07: prova substitutiva (apenas para quem perdeu a P1 ou P2 com falta justificada)
16/07: vista de prova e pedido de revisão mediante agendamento por email
Planejamento e Materiais
Calendário AcadêmicoTIDIA: AED1-2013.1-Leticia
Monitoria: às terças-feiras, das 18h às 19h, no L. 409-2
Data | Assunto |
23/04: | Aula prática. Apresentação da disciplina e introdução à linguagem C++ |
25/04: | Aula teórica. Recursividade Exemplos de Recursividade: Fatorial Fibonacci Introdução a Complexidade de Algoritmos Listas Lineares Estáticas (seqüenciais) Métodos de busca (sequencial e binária) |
30/04: | Aula prática. Exercícios práticos sobre recursividade, listas lineares estáticas e métodos de busca. Roteiro de aula Exemplo do uso de malloc Exemplo de função com e sem retorno |
02/05: | Aula teórica. Listas Lineares Dinâmicas (encadeadas). Códigos: Passagem de parâmetros por referência Lista em alocação estática Lista encadeada Busca binária recursiva |
07/05: | Aula prática. Exercícios práticos sobre ponteiros, recursividade, listas lineares dinâmicas Atividade Resolução do exercício (e exemplo de lista duplamente encadeada) |
09/05: | Aula teórica. Listas Lineares Dinâmicas (encadeadas) Lista de exercícios de ponteiros |
14/05: | Aula prática. Exercícios práticos sobre ponteiros, recursividade, listas lineares dinâmicas Atividade |
16/05: | Aula teórica. Listas Lineares Dinâmicas (encadeadas) |
21/05: | Aula prática. Exercícios práticos sobre ponteiros, recursividade, listas lineares dinâmicas |
23/05: | Aula teórica. Métodos simples de ordenação (Bubble, Insertion, Selection) |
28/05: | Aula prática. Exercícios práticos sobre listas estáticas |
30/05: | Aula teórica. FERIADO CORPUS CHRISTI |
04/06: | Aula prática. Exercícios práticos sobre ordenação quadrática |
06/06: | Aula teórica. Prova P1 Gabarito Notas |
11/06: | Aula prática. Exercícios práticos sobre ordenação quadrática |
13/06: | Aula teórica. Métodos eficientes de ordenação (Mergesort, Heapsort) |
18/06: | Aula prática. Exercícios práticos sobre ordenação eficiente |
20/06: | Aula teórica. Métodos eficientes de ordenação: Quicksort |
25/06: | Aula prática. Exercícios práticos sobre ordenação eficiente: projeto |
27/06: | Aula teórica. Árvores Binárias de Busca |
02/07: | Aula prática. Exercícios práticos sobre árvores |
04/07: | Aula teórica. Prova P2 Lista de Exercícios Notas |
09/07: | Aula prática. FERIADO REVOLUÇÃO CONSTITUCIONALISTA |
11/07: | Aula teórica. Prova substitutiva (para quem perdeu a P1 ou P2 com falta justificada) |
16/07: | Aula prática. Lançamento de Notas Notas Vista de Prova e Pedido de Revisão (mediante agendamento por email) |