AEDSII - Algoritmos e Estruturas de Dados II

Período: 2006.2

Horário e sala de aula:

Professores:

Contatos:

Avisos

 

Informações nesta página:


Sobre o Curso

Objetivo: O curso tem por objetivo apresentar algoritmos e estruturas de dados básicos para o desenvolvimento de sistemas computacionais. Ao fim do curso os alunos terão conhecimento as principais técnicas utilizadas na implementação de estruturas de dados básicas, algoritmos de ordenação e pesquisa em memória principal. Os alunos estarão também capacitados a efetuar análises simples da complexidade de algoritmos.

Ementa Resumida: Conceitos de algoritmos, estruturas de dados e tipo abstrato de dados. Algoritmos recursivos. Análise de algoritmos. Estrutura de dados na memória principal (lista, fila, pilha, árvore), alocação dinâmica de memória. Algoritmos de ordenação. Algoritmos de pesquisa.

Avaliação: O aluno será avaliado através de:


Datas Importantes

As datas de provas e entrega de trabalhos serão definidas de acordo com o andamento do curso. À medida que forem definidas serão disponibilizadas aqui.

Provas e TrabalhosDatas Previstas
Trabalho 030/08/2006
Prova I21/09/2006
Trabalho 129/09/2006
Trabalho 2 08/11/2006
Prova 2 09/11/2006
Trabalho 3 05/12/2006
Prova 3 05/12/2006
Exame Especial 19/12/2006


Aulas

Aula

Data

Assunto Previsto

Material e Atividades extra-classe

Aula 1

03/08

Apresentação do curso.

 

Aula 2

08/08

Conceitos básicos e análise de algoritmos (seções 1.1, 1.2 e 1.3)

 

Aula 3

10/08

Aula sobre PASCAL no Laboratório (seção 1.5)

Entrega do TP0

 

15/08

Feriado

 

Aula 4

17/08

Limite inferior, comportamento assintótico de funções (seções 1.3 e 1.3.1)

 

Aula 5

22/08

Análise de Algoritmos (seção 1.3.2)

 

Aula 6

24/08

Análise de Algoritmos (seção 1.4) e Recursividade

 

Aula 7

29/08

Análise de Algoritmos Recursivos (seção 1.4) e Listas (seção 3.1); Implementação com vetores (seção 3.1.1)

 

Aula 8

31/08

Lista de Exercícios 1 + Dúvidas

Entrega TP1

Aula 9

05/09

Listas usando ponteiros  

 

 

07/09

Feriado

 

Aula 10

12/09

Exemplo de implementação com lista

 

Aula 11

14/09

Filas e Pilhas (seção 3.2 e 3.3)

 

Aula 12

19/09

Lista de Exercícios 2 + Dúvidas

 

Aula 13

21/09

Filas e Pilhas (continuação)

 

Aula 14

26/09

Árvores

(Aho et al. - seção 3.1; Transparências)

Aula 15

28/09

Prova 1

 

Aula 16

03/10

Exercício de árvores. Algoritmos de ordenação interna: método da bolha (não tem no livro)

 

Aula 17

05/10

Algoritmos de ordenação interna: métodos de seleção e inserção (seções 4, 4.1.1 e 4.1.2)

 

Aula 18

10/10

Quicksort Recursivo (seção 4.1.3).

 

 

12/10

Feriado

 

Aula 19

17/10

Quicksort Não-Recursivo e melhorias (não tem no livro); Shellsort (seção 4.1.3)

Transparências de Quicksort não recursivo; Entrega TP2

Aula 20

19/10

Heaps (seção 4.1.5)

 

Aula 21

24/10

Heaps e Heapsort (seção 4.1.5)

 

Aula 22

26/10

Aula prática

Roteiro para a aula prática

Aula 23

31/10

Lista de Exercícios 3 + Dúvidas

 

 

02/10

Feriado

 

Aula 24

07/11

Algoritmos de Pesquisa: Pesquisa sequencial; pesquisa binária (seções 5.1, 5.2)

 

Aula 25

09/11

Prova 2

 

Aula 26

14/11

Árvore Binária de Pesquisa (seção 5.3.1)

Entrega TP3

Aula 27

16/11

Árvore Binária de Pesquisa (seção 5.3.1) Árvores balanceadas (conceito);

 

Aula 28

21/11

Entrega e correção da Prova 1

 

Aula 29

23/11

Hashing (seções 5.5.1, 5.5.2, 5.5.3)

 

Aula 30

28/11

Pesquisa Digital - Trie e Patricia (seções 5.4.1 e 5.4.2)

 

Aula 31

30/11

Lista de Exercícios 4 + Dúvidas

 

Aula 32

05/12

Prova 3

 

Aula 33

07/12

Reserva

 

Aula 34

12/12

Reserva

 

Aula 35

14/12

Encerramento

 


Trabalhos

  • Trabalhos Práticos

  • Listas de Exercícios


    Bibliografia Básica


    Links de Interesse

  • Pascal

  • C


    Monitoria

    MonitorHoráioSala
    Flávio 2a. feira: 12:30 às 14:303009b
    David4a. feira: 15 às 173009b
    Fabiano5a. feira: 14 às 163004

    Caso seja necessário atendimento em algum outro horário é necessário marcar antecipadamente (por email) com os monitores.


    Última atualização em 19 de dezembro de 2006