Estrutura de Dados

  • Curso: Tecnologia em Sistemas para Internet

  • Disciplina: Estrutura de Dados

  • Carga-Horária: 60h (80h/a) Pré-Requisito(s): Algoritmos e Técnicas de Programação Número de créditos: 4

EMENTA

Análise de algoritmos. Estruturas de dados lineares: pilhas, filas e listas encadeadas. Estrutura de dados não-lineares: árvores. Fila de prioridade e Heaps. Dicionário de dados. Classificação de dados. Balanceamento em árvores.

PROGRAMA

Objetivos

• Compreender conceitos utilizados no processo de desenvolvimento das estruturas de dados. • Desenvolver programas utilizando estruturas de dados. • Aplicar técnicas de pesquisa e classificação de dados.

Bases Científico-Tecnológicas (Conteúdos)

   1.   Conceitos Iniciais
         1.1.       Introdução: tipos primitivos de dados, vetores, matrizes, estruturas.
         1.2.       Tipos abstratos de dados (TADs).
         1.3.       Representação e implementação de TDA.
   2.   Recursividade
         2.1.       Definição, exemplos, simulação e implementação de recursividade.
   3.   Listas lineares
         3.1.       Definição, estruturas estáticas e dinâmicas, operações básicas em listas de elementos.
   4.   Pilhas
         4.1.       Definição do tipo abstrato e aplicações
         4.2.       Operações básicas em uma pilha
   5.   Filas
         5.1.       Definição do tipo abstrato e aplicações
         5.2.       Operações básicas em uma fila
         5.3.       Filas circulares
   6.   Classificação
         6.1.       Listas ordenadas. Métodos de classificação de dados por:
                 6.1.1.        Inserção (direta e incrementos decrescentes)
                 6.1.2.        Troca (bolha e partição)
                 6.1.3.        Seleção (seleção direta e em árvore)
                 6.1.4.        Distribuição e intercalação
         6.2.       Listas ligadas
                 6.2.1.        Pilhas ligadas
                 6.2.2.        Filas lidadas
                 6.2.3.        Listas ligadas
                 6.2.4.        Listas duplamente ligadas
   7.    Árvores
         7.1.       Conceito, representação e terminologia.
         7.2.       Árvores genéricas
         7.3.       Árvores binárias
         7.4.       Implementação de árvore genérica através de árvore binária
         7.5.       Algoritmos em árvores
   8.   Filas de prioridade e Heaps
         8.1.       Conceito, implementação e aplicações.
   9.   Dicionários de Dados
         9.1.        Tabela hash
         9.2.        Árvore binária de pesquisa

Procedimentos Metodológicos

• Aulas teóricas expositivas, aulas práticas em laboratório, desenvolvimento de projetos. • Leitura de textos, palestras, seminários, visitas técnicas, pesquisas bibliográficas.

Recursos Didáticos

• Quadro branco, computador, projetor multimídia, retroprojetor, vídeos.