Estrutura de Dados - Conceitos fundamentais

23.078 visualizações

Publicada em

Estruturas de dados são de fundamental importância para a computação. Nesta apresentação, são exibidos os conceitos fundamentais.

Publicada em: Tecnologia
2 comentários
21 gostaram
Estatísticas
Notas
Sem downloads
Visualizações
Visualizações totais
23.078
No SlideShare
0
A partir de incorporações
0
Número de incorporações
49
Ações
Compartilhamentos
0
Downloads
0
Comentários
2
Gostaram
21
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Estrutura de Dados - Conceitos fundamentais

  1. 1. Estruturas de DadosProf. Ms. Fabricio Lopes Sanchez
  2. 2. Tópicos• Estrutura de dados? O que é?• Principais estruturas de dados – Vetores (arrays) – Pilha – Listas – Filas – Outras estruturas• Onde pilhas são utilizadas?
  3. 3. Estrutura de dados: o que é?“Estrutura de dados é o ramo da computação que estuda os diversos mecanismos de organização de dados para atender aos diferentes requisitos de processamento.” Vamos detalhar essa informação?
  4. 4. Estrutura de dados: o que é? Módulo 1 Módulo 2 Módulo 3 Programa de computador Módulo 4 Módulo 5 Módulo 6
  5. 5. Estrutura de dados: o que é?Uma estrutura de dados pode ser dividida emdois pilares fundamentais: dado e estrutura Dado Estrutura Elemento que possui Elemento estrutural que valor agregado e que responsável por carregar pode ser utilizado para as informações dentro de solucionar problemas uma estrutura de computacionais. Os dados software. possuem tipos específicos.
  6. 6. Estrutura de dados: o que é?Uma estrutura de dados pode ser dividida emdois pilares fundamentais: dado e estrutura Dado Estrutura Tipos de dados: Estruturas: - Inteiro (int) - Vetores - Texto (string) multidimensionais - Caracter (char) - Pilhas - Ponto flutuante (float) - Filas - Ponto flutuante - Listas (double)
  7. 7. Principais tipos de estruturas de dadosVetores (unidimensionais e bidimensionais)É uma das estruturas de dados mais simples e maisutilizadas dentre todas. Principais características: – Adição e pesquisa de novos elementos de forma aleatória – Acesso aos elementos através de índices – Possuem tamanho finito de elementos – Carregam dados de tipos específicos – Indexação com início em 0 (zero) – Unidimensionais: apenas linha – Bidimensionais: linhas e colunas (formato de matriz)
  8. 8. Principais tipos de estruturas de dadosVetores unidimensionais (int vetor[8];) vetor 10 2 5 27 34 789 33 0 0 1 2 3 4 5 6 7 • vetor[0] = 10; • vetor[4] = 34; • vetor[1] = 2; • vetor[5] = 789; • vetor[2] = 5; • vetor[6] = 33; • vetor[3] = 27; • vetor[7] = 0;
  9. 9. Principais tipos de estruturas de dadosVetores bidimensionais (int vetorb[2][2];) 0 1 • vetorb[0][0] = 10; • vetorb[0][1] = 2; 0 10 2 • vetorb[1][0] = 34; vetorb • vetorb[1][1] = 50; 1 34 50
  10. 10. Principais tipos de estruturas de dadosPilhaÉ uma estrutura de dados amplamente utilizada e queimplementa a ideia de pilha de elementos: – LIFO (Last-In-First-Out) – Permite a adição e remoção de elementos – O elemento a ser removido é sempre aquele mais novo – Simula a ideia de pilhas de elementos – Para que o acesso a um elemento da pilha ocorra, os demais acima devem ser removidos
  11. 11. Principais tipos de estruturas de dados• Pilha NovaPilha = new Pilha();• NovaPilha.Add(2);• NovaPilha.Add(3);• NovaPilha.Add(6);• NovaPilha.Remove(3); 6 3 2
  12. 12. Principais tipos de estruturas de dadosListaÉ uma estrutura de dados amplamente utilizada e queimplementa a ideia de lista de elementos: – FIFO (First-In-First-Out) – Permite a adição e remoção de elementos – O elemento a ser removido é sempre o primeiro a entrar – As operações de entrada e saída sempre ocorrem nas extremidades
  13. 13. Principais tipos de estruturas de dados • Lista NovaLista = new Lista(); • NovaLista.Add(2); • NovaLista.Add(3); • NovaLista.Add(6); • NovaLista.Add(12); 12 6 3 2
  14. 14. Outras estruturas• Árvores• Árvores binárias• Pilhas, listas e filas dinâmicas e encadeadas• Grafo• Tabela Hashing• Etc.
  15. 15. Aplicações• Estruturas de dados são muito utilizadas em aplicações de nível mais baixo, tais como: – Implementação de estruturas de bancos de dados – Compiladores e interpretadores – Editores de texto – Kernel de sistemas operacionais – Etc.

×