Ir para o conteúdo
GovBR
Universidade Federal do Espírito Santo

Portal do Ementário

Informações Gerais
Disciplina:
Estrutura de Dados I ( DCE16369 )
Unidade:
Departamento de Computação e Eletrônica
Tipo:
Obrigatória
Período Ideal no Curso:
3
Nota Mínima para Aprovação:
5.00
Carga Horária:
60
Número de Créditos:
3

Objetivos
Introduzir técnicas básicas de programação, estruturas de dados e noções de complexidade de algoritmos. [Familiaridade] Fornecer elementos e técnicas para auxiliar no projeto/escolha de boas estruturas de dados durante o desenvolvimento de programas. [Familiaridade] Descrever os conceitos e definições dos diferentes tipos de listas encadeadas. [Familiaridade] Estudar algoritmos para manipulação dos principais tipos abstratos de dados. [Familiaridade] Identificar as diferenças entre listas, filas e pilhas. [Avaliação] Descrever as propriedades de um heap e o uso de heaps como uma implementação de filas de prioridade. [Familiaridade] Apresentar os algoritmos básicos de busca (sequencial e binária), evidenciando a diferença entre eles. [Familiaridade] Apresentar os conceitos e as principais operações de árvores e árvores binárias de busca não balanceadas. [Familiaridade] Apresentar os conceitos e operações de árvores binárias de busca balanceadas (AVL e Rubro-Negra), evidenciando como o balanceamento de árvores afeta a eficiência de várias operações nas árvores de busca binária. [Familiaridade] Desenvolver técnicas básicas de compilação em separado e estruturação de programas. [Uso] Apresentar a definição e uso de funções genéricas. [Uso] Gerenciar a compilação de programas e bibliotecas com ferramentas como make . [Uso]

Ementa
Fundamentos de análise de algoritmos. Conceito de Tipos Abstratos de Dados. Listas encadeadas. Pilhas e filas. Filas de prioridade e Heap. Algoritmos de busca sequencial e binária. Árvores binárias de busca não balanceadas. Árvores binárias de busca balanceadas: AVL e Rubro-Negra. Funções genéricas. 

Bibliografia
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, “Algoritmos. Teoria e Prática”. 3. ed. Rio de Janeiro: Rio de Janeiro: Elsevier – Campus, 2012. Robert Sedgewick, "Algorithms in C, Parts 1-4". 3. ed. Addison-Wesley, 2001. André Backes, "Estrutura de Dados Descomplicada em Linguagem C". 1. ed. Elsevier, 2016.

Bibliografia Complementar
Robert Sedgewick, Kevin Wayne, "Algorithms". 4. ed. Addison-Wesley, 2011. Michael T. Goodrich, Roberto Tamassia, "Algorithm Design and Applications". 1. ed. Wiley, 2014. Reema Thareja, "Data structures using C". 2. ed. Oxford University Press, 2014. Waldemar Celes, Renato Cerqueira, José L. Rangel, "Introdução à Estruturas de Dados". 2. ed. Elsevier, 2016. Michael T. Goodrich, Roberto Tamassia, David M. Mount, "Data Structures and Algorithms in C++". 2. ed. Wiley, 2011.
Conteúdo acessível em Libras usando o VLibras Widget com opções dos Avatares Ícaro, Hosana ou Guga. Conteúdo acessível em Libras usando o VLibras Widget com opções dos Avatares Ícaro, Hosana ou Guga.