CHRISTUS
Estrutura, Pesquisa e
Ordenação de Dados: 80h
email: christus@fredbf.com
1. EMENTA |
|
Listas lineares e suas
generalizações: listas encadeadas, pilhas e
filas. Listas generalizadas. Aplicações de
listas. Algoritmos para pesquisa e ordenação em
memória principal e secundária.
Organização de arquivos. Técnicas de
recuperação de informação.
Árvores e suas generalizações:
árvores binárias, árvores de busca,
árvores balanceadas (AVL), árvores B e B+.
Aplicações de árvores.
|
2.
OBJETIVOS |
|
- Introduzir o conceito de tipo de dados
(TAD), evidenciando aspectos de implementação,
aplicacões e complexidade;
- Apresentar estruturas de dados básicas (listas lineares,
pilhas, filas, árvores);
- Apresentar métodos de busca e
classificação de dados em memória
principal utilizando estruturas de dados básicas.
|
3.
ANDAMENTO DA DISCIPLINA |
|
|
|
(1)
Conteúdo: apresentação da disciplina,
compilador DevC++ e visão geral do Ansi C
(2) Jogo
dos sapos
- documento excel com jogo de raciocínio lógico.
Contribua com o site e envie links de jogos de raciocínio ao
professor (christus@fredbf.com)
(3) Leitura: (a)
UFMG: aulas 1, 2, 3 e 4; (b) UFPB: cap1
(4)
Exercícios: (a) UFMG: lista1 e lista2; (b) UFPB: cap1; (c)
ExercíciosDesafio1
|
|
|
(1)
Conteúdo: (a) exercícios de revisão;
(b) vetores e (3) strings;
(2) Leitura: (a)
UFMG: aula 5; (b) UFPB: seções 3.1 e 3.7
(3)
Exercícios: (a) UFMG: lista4; (b) UFPB: cap3;
(4) Problema do scanf em C: usar o fflush(stdin) da biblioteca stdio.h (ler
mais);
|
|
|
(1)
Conteúdo: (a) estruturas (b) typedef; (c)
inicializando
valores; (d) passagem de parâmetro; (e)
atribuição;
(f) vetor de estruturas;(g) vetor de estrutura como parâmetro
(2) Leitura: (a)
UFMG: aula 11; (b) UFPB: seção 4.1
(3)
Exercícios: (a) UFMG: lista3; (b) UFPB: cap4; (c)
ExercíciosDesafio2
|
|
|
(1)
Conteúdo: (a) exerícios de revisão (b)
ponteiros;
(c) alocação dinâmica de
memória
(2) Leitura: (a)
UFMG: aula 6; (b) UFPB: seção 2.1
(3) OBS: greve de ônibus
|
|
|
(1)
Conteúdo: (a) motivação (b)
definição;
(c) operações;
(2) Leitura: (a)
capítulo 4 de VILLAS; (b) seção 4.2 de
TENEMBAUM
(3) OBS: a Aula4
ocorreu nesse dia
|
|
Aula 6
19/08
|
|
|
Aula 7
21/08
|
UNIDADE I
Exercícios
de Listas Encadeadas |
|
Aula9
24/08
|
(1)
Conteúdo: (c) operações
|
|
Aula 10
26/08
|
(1)
Conteúdo: (e) lista circular; (f) lista duplamente encadeada;
(2) Fazer Exercícios de Fixação 1 (EF1_ListasLigadas.pdf);
|
|
|
|
|
Aula 12
02/09
|
|
|
Aula 13
04/09
|
|
|
07/09
|
FERIADO |
|
Aula 14
09/09
|
UNIDADE I
Filas e Pilhas |
|
Aula 15
14/09
|
PROVA
1 |
|
Aula 16
16/09
|
(1)
Conteúdo: (a) motivação; (b) busca linear; (c) busca binária
(2) Correção e divulgação da nota da Prova 1;
(3) OBS: não houve aula (palestra Jogos Digitais Eletrônicos)
|
|
|
(1)
Conteúdo: (a) motivação; (b) busca linear; (c) busca binária
(2) Correção e divulgação da nota da Prova 1;
|
|
|
(1)
Conteúdo: (a) auto-avaliação; (b)
ordenação de dados; (c) ordenação por
troca: bubble sort
(2) OBS: todos os alunos faltaram, a aula não aconteceu
|
|
Aula 19
28/09
|
(1) OBS: a aula passada ocorreu aqui
|
|
|
(1)
Conteúdo: (a) auto-avaliação; (b) insertionSort; (c) selectionSort
|
|
Aula 21
05/10
|
|
|
|
(1)
Conteúdo: (a) auto-avaliação; (b) quickSort; (c) mergeSort
|
|
12/10
|
FERIADO |
|
|
(1)
Conteúdo: (a) auto-avaliação; (b) tabela hash; (c) tipos de funções hash; (d) colisão; (e) algoritmo de Cichelli; (f) conclusões
|
|
Aula 24
16/10
|
|
|
Aula 25
19/10
|
|
|
Aula 26
21/10
|
|
|
Aula 27
26/10
|
|
|
Aula 28
28/10
|
|
|
02/11
|
FERIADO |
|
Aula
29
04/11
|
|
|
Aula
30
09/11
|
|
|
Aula 31
11/11
|
|
|
Aula 32
16/11
|
|
|
Aula 33
18/11
|
|
|
Aula 34
23/11
|
|
|
Aula 35
25/11
|
|
|
Aula 36
30/11
|
Grafos: Fluxo
Máximo |
|
Aula 37
02/12
|
Grafos: Fluxo
Máximo |
|
Aula 38
04/12
|
Exercícios
de Grafos |
|
Aula 39
07/12
|
|
Aula 40
09/12
|
Grafos:
Ordenamento Topológico |
|
14/12
|
PROVA
3 |
|
|
4.
BIBLIOGRAFIA |
|
- TENENBAUM,
A.; Langsam, Y.; Augenstein, M.: Estruturas
de dados usando C. São Paulo: Bookman. (LIVRO
TEXTO)
- VILLAS,
Marcos Vianna et AL. Estrutura
de dados: conceitos e técnicas de
implementação. Rio de Janeiro: Campus.
(LIVRO TEXTO)
- DROZDEK,
Adam. Estruturas de Dados e
Algoritmos em C++.São Paulo: Pioneira Thomson
Learning (LEITURA
COMPLEMENTAR)
- VELOSO,
Paulo et al. Estrutura de dados.
Rio de Janeiro: Campus (LEITURA COMPLEMENTAR)
- Curso
de Linguagem C da UFMG:
- Material
interessante:
- Material
do Prof. Ulysses Guimarães (UFPB):
|
5. COMPILADORES |
|
- DevC++
- compilador C/C++, versão 4.9.9.2, gratuito (9MB)
- TurboC++
- compilador C/C++ antigo, versão 1.0.1, mas com help
completo (3MB)
|
|