Escolar Documentos
Profissional Documentos
Cultura Documentos
ESTRUTURAS DE DADOS
Capítulo Zero
Apresentação
Capítulo Zero - Apresentação
0.1 – Professor
0.2 – Objetivos da disciplina
0.3 – Importância de uma boa estruturação de
informações
0.4 – Modelos de armazenamento de informações
0.5 – Importância da disciplina
0.6 – Programa da disciplina
0.7 – Metodologia e carga horária
0.8 – Critérios de avaliação
0.9 – Bibliografia
0.1 - Professor
Nome: Fábio Carneiro Mokarzel
E-mail: fabiomokarzel@gmail.com
Exemplos:
Listas lineares, Árvores, Grafos
• Listas telefônicas
• Folhas de pagamento de
empregados
• Livros de uma biblioteca
• Tabelas de banco de
dados relacional
Organogramas de empresas
Organização de livros e cursos
Jogos eliminatórios de um campeonato
Expressões aritméticas
Estrutura de um programa
Expressão aritmética:
void main () {
int n, i, p, aux, vetor[50]; Estrutura de um programa
char trocou; em C aplainada
read (n);
for (i=0; i<n; i++)
read (vetor[i]);
trocou = 1;
for (p = n-2; p>=0 && trocou == 1; p--) { Sua árvore de
trocou = 0; armazenamento
for (i = 0; i<=p; i++)
if (vetor[i] > vetor[i+1]) {
aux = vetor[i];
vetor[i] = vetor[i+1];
vetor[i+1] = aux;
trocou = 1;
}
}
for (i=0; i<n; i++)
write (vetor[i]);
}
Cada nó retangular
pode ser mais detalhado
0.4.3 – Grafos
Tarefas de um projeto
Sistema rodoviário de uma região
Rede de computadores
Fornecimento de produtos entre fábricas
Dependências entre os comandos de um programa
Máquinas de estados finitos (inúmeras aplicações em
Engenharia)
Editores de texto
Capítulo Zero - Apresentação
0.1 – Professor
0.2 – Objetivos da disciplina
0.3 – Importância de uma boa estruturação de
informações
0.4 – Modelos de armazenamento de informações
0.5 – Importância da disciplina
0.6 – Programa da disciplina
0.7 – Metodologia e carga horária
0.8 – Critérios de avaliação
0.9 – Bibliografia
0.5 – Importância da Disciplina
0.5.1 – Automatização de sistemas de informações
Contas bancárias Documentação de projetos
Compilação
Banco de Dados
Engenharia de Software
Inteligência Artificial
Sistemas Operacionais
Análise de Algoritmos
Programação Orientada a Objetos
Compiladores
Computação Gráfica
0.5.3 – Para Engenharia de modo geral
Encontrar o
caminho mais curto
de um vértice a
todos os outros, em
um grafo:
Caminhos mais curtos
Aplicações em:
•Transporte terrestre,
aéreo, etc.
•Robótica
•Projeto de VLSI:
caminho de menor
resistência em circuitos
•Geometria:obstáculos
no espaço Euclidiano
Busca em profundidade e em largura
Exemplo:
1 1
1 1
1 1
•Classesde equivalência
1,2,3,4 5,6,7
em circuitos digitais
Problemas: 15 8
13 15
•Determinação do tempo mínimo de
execução
1 1 1
6 5 6
1 1
2 5 4 2 5 4 2 4
5 5 5
3 3 2 3 3
6 6 3 2
4 4 4
6 6 6
5 5 5 6
Redes de interconexão em
a geral
Grafo Sistemas de transmissão de
original b c energia elétrica
d e Sistemas de distribuição
f g
hidráulica
b c “c” é ponto
b
de articulação
d e f g d e f g
CodeBlocks
Dev C++
Monitor para a disciplina CES-11:
O que é permitido:
O que é permitido:
Aho,A.V.;
Hopcroft,J.E.;
Ullman,J.D. – Data
Structures and
Algorithms – Addison
Wesley - 1983
Principal fonte dos slides
Algoritmos em Pascal
0.9 – Bibliografia
0.9.1 – Bibliografia básica
Drozdek,A. - Estrutura
de Dados e Algoritmos
em C++ - Thomson -
2002
0.9 – Bibliografia
0.9.1 – Bibliografia básica
Celes, W.; Cerqueira, R.;
Rangel, J.L. –
Introdução a Estruturas
de Dados – Campus –
2004
0.9 – Bibliografia
0.9.1 – Bibliografia básica
Feofiloff, P. –
Algoritmos em
Linguagem C – Campus
– 2009
0.9 – Bibliografia
0.9.1 – Bibliografia básica
Cormen,T.H.;
Leiserson,C.E.; Stein C.;
Rivest,R.L. –
Algoritmos: Teoria e
Prática – Campus -
2002
0.9 – Bibliografia
0.9.2 – Bibliografia
suplementar
Goodrich,M.T.;
Tamassia,R. - Projeto
de Algoritmos -
Bookman - 2004
0.9 – Bibliografia
0.9.2 – Bibliografia
suplementar
Sedgewick,R. –
Algorithms in C –
Addison Wesley –
1998
0.9 – Bibliografia
0.9.2 – Bibliografia
suplementar
Preiss,B.R. -
Estruturas de Dados e
Algoritmos - Campus -
2001
0.9 – Bibliografia
0.9.2 – Bibliografia
suplementar
Koffman, E.B.;
Wolfgang, P.A.T. –
Objetos, Abstração,
Estruturas de Dados e
Projetos Usando C++ -
LTC - 2008