UFJF - Universidade Federal de Juiz de Fora

Plano de ensino

Disciplina: DCC013 - ESTRUTURA DE DADOS

Créditos: 4

Departamento: DEPTO DE CIENCIA DA COMPUTACAO /ICE

Ementa Introdução; Tipos Abstratos de Dados; Representação linear de matrizes; Listas Lineares; Pilhas e Filas; Árvores; Fila de prioridades; Grafos.
Conteúdo 1. Introdução: Introdução ao estudo de complexidade assintótica. Ordenação (BubbleSort, InsertionSort, SelectionSort e ShellSort), busca binária, recursividade.
2. Tipos Abstratos de Dados: Domínio de dados. Características de TADs. Programação com tipos abstratos de dados.
3. Representação linear de matrizes: Cálculo de endereçamento de elementos: representação linear de matrizes, matrizes esparsas, matrizes triangulares, matrizes diagonais e matrizes tridiagonais.
4. Listas Lineares: Definição. Operações mais comuns. Representações de Listas. Listas contíguas. Listas encadeadas. Listas duplamente encadeadas. Listas Circulares. Listas com descritor. Aplicações. Listas ordenadas e busca binária.
5. Pilhas e Filas: Definição. Pilhas: operações básicas, implementação. Filas: operações, implementação. Aplicações de pilhas e filas.
6. Árvores: Definição. Representações Gráficas. Representações em Árvores. Árvores Binárias. Árvores Gerais como Árvores Binárias. Caminhamentos em profundidade e em largura. Árvore Binária de Busca. Aplicações (exemplo: avaliação de expressões, árvores de busca).
7. Fila de prioridades: Fundamentos. Heaps: inserção, remoção e seleção de valores com maior prioridade. Heaps binárias. Representação vetorial de heaps.
8. Grafos: Definição. Implementação por meio de matrizes de adjacência, listas de adjacências e matrizes de incidências. Representação de grafos direcionados e não-direcionados. Aplicações.

Bibliografia GUIMARÃES, A. P. Algoritmos e estruturas de dados . LTC, 1994.
PEREIRA, S. L. Estrutura de dados fundamentais. Érica, 1996.
PREISS, Bruno. Estrutura de Dados e Algoritmos. Elsevier. 2000.
VELOSO, Paulo et al. Estruturas de dados. Campus, 1983.
ZIVIANI, N. Projeto de algoritmos com implementação em Java e C++. Cengage Learning, 2007.

Bibliografia (continuação)
Bibliografia complementar Em aberto
Voltar