Estrutura de Dados (UNIFACS)

November 24th, 2010

Contato: yguarata.cavalcanti [at] pro [dot] unifacs [dot] br

Ementa

Tipos abstratos de dados. Técnicas de utilização de apontadores. Representação e manipulação de filas, pilhas e árvores. Técnicas de busca de informação na memória principal.

Objetivos

Aprimorar a capacidade de abstração do aluno para resolver problemas complexos, de maneira elegante e eficiente. Representar informações na memória do computador de modo eficiente. Conhecer algumas das principais estruturas de dados utilizadas em computação e desenvolver algoritmos para manipulação das mesmas.

Conteúdo programático

  1. Conceitos básicos de dados
  2. Tipos abstratos de dados
  3. Vetores e arranjos (arrays)
  4. Recursividade
    • Conceituação. Aplicações e exemplos.
  5. Métodos de busca
    • Busca linear e busca binária
  6. Estruturas de dados básicas
    • Listas lineares
    • Pilhas e filas
    • Apontadores
    • Listas encadeadas (Simples, Dupla, Múltiplas, Genéricas)
    • Árvores
      • Árvores genéricas
      • Árvores binárias
      • Árvores binárias de busca
      • Árvores balanceadas AVL

Metodologia

Aulas teóricas, práticas e trabalhos práticos para assimilação dos conceitos apresentados. Elaboração de listas de exercícios para estimular os alunos na práticas do estudo individual. Apresentação de seminários pelos alunos para estimular o estudo individual e a pesquisa.

Avaliação

  • Provas (peso 5)
  • Trabalhos (peso 2)
  • Prova final (peso 3)

Bibliografia Básica

  1. ZIVIANI, N. Projeto de Algoritmos com Implementações em Pascal e C. Pioneira Thompson, 2003, 2a ed.
  2. SZWARCFITER, J. L.; MARKENZON, L. Estruturas de Dados e Seus Algoritmos. Editora LTC, 1998.
  3. CORMEN, T. H.; LEISERSON, C. E.; RIVEST, R. L.; STEIN, C. Algoritmos: Teoria e Prática. Campus, Rio de Janeiro, 2001.

Bibliografia Complementar

  1. HOROWITZ, E.; SAHNI, S. Fundamentos de Estruturas de Dados. Campus, Rio de Janeiro, 4a Ed., 1994.
  2. KNUTH, D. A. The Art of Computer Programming, Vol.1: Fundamental Algorithms. Editora Addison-Wesley, 1973.
  3. KORTH, H. F.; SILBERCHATZ, A.; SUDARSHAN, S. Sistema de Bancos de Dados. São Paulo: Makron Books, 3a Ed., 1999.
  4. TENENBAUM, A. M.; LANGSAM Y.; AUGENSTEIN, M. A. Estruturas de dados em C. Editora Prentice-Hall, 1993.
  5. WEISS, M. A. Algorithms, Data Structures, and Problem Solving with C++. Editora Addison-Wesley, 1996.
  6. WIRTH, N. Algoritmos e Estruturas de Dados. Prentice-Hall, 1976.

Programação de Aulas

28/07/201 0 Apresentação da disciplina e conceitos básicos de dados
04/08/201 0 Registros, arrays e Tipos abstratos de dados (TAD)
11/08/2010 Tipos abstratos de dados (TAD)
18/08/201 0 Recursividade
25/08/201 0 Prova 01
01/09/201 0 Busca linear, busca binária
08/09/201 0 Lista com implementação em arranjos
15/09/201 0 Fila com implementação em arranjos
22/09/201 0 Pilha com implementação em arranjos – Lista 01
29/09/201 0 Circuito UNIFACS (sem aula)
06/10/201 0 Prova 02
13/10/2010 Ponteiros e Lista com implementação em ponteiros – Lista 02
20/10/2010 Pilha com implementação em ponteiros — Lista 03
27/10/2010 Fila com implementação em ponteirosLista 04
03/11/2010 Prova 03
10/11/2010 Definição do trabalho
Equipe 01, Equipe 02, Equipe 03, Equipe 04
17/11/2010 Entrega 01
24/11/2010 Acompanhamento
01/12/2010 Entrega final (Segunda chamada)
08/12/2010 Feriado
15/12/2010 Prova final
Share
Comments are closed.