Escolar Documentos
Profissional Documentos
Cultura Documentos
de Dados
Ronaldo Barbosa
Sumário
Abstração de dados. Conhecer a estrutura de
1 • Vetores e exemplos lista em memoria contígua.
A forma como o usuário ou programador lida com os dados não corresponde à forma
como os dados estão realmente armazenados na memória do computador ou como
eles são realmente.
0 1 2 3 4 5 6 7 8 9 - Posições
9 4 8 7 3 2.5 6 5 3 4
Tamanho do array é 10
Array de 10 elementos
Imagem: http://www.squids.com.br/arduino/index.php/software/dicas-de-software/269-como-declarar-e-utilizar-arrays-no-arduino-vetores-e-matrizes (adaptado)
NOTAS [3] = 7
NOTAS [5] = 2.5
Para apagar ou inserir um elemento novo, os
elementos do vetor tem que ser movimentados!
Elemento
Primeira posição
(na posição 8)
0 1 2 3 4 5 6 7 8 9 - Posições
9 4 8 7 3 8
2.5 6 5 3 4
NOTA [5] = 8
Leitura de matriz armazenada na memória
contígua com início em x
Endereços
Células de
memória
Leituras [1]
Leituras [2]
LeiturasFonte:
[3](insira a fonte da imagem) tam 06
Leituras [4]
Imagem: Esquema adaptado pelo professor.
Matriz conceitual
Uma Lista Ligada é uma estrutura que corresponde a uma sequência lógica de entradas
ou nós.
Ponteiro para o
início da lista
Nome Ponteiro
Observe os Ponteiros ligando
os nós da lista.
Nome Ponteiro
Nome Ponteiro
Ponteiro para o
início da lista
Elemento removido
Nome Ponteiro
Eliminando um elemento Ponteiro antigo
da lista ligada.
Nome Ponteiro
Nome Ponteiro
Ponteiro novo
Imagem: Esquema adaptado pelo professor.
Lista ligada: inserindo um elemento
O mesmo acontece na inserção, só mudança de ponteiros!
Ponteiro para o
início da lista
Novo elemento
Nome Ponteiro
Ponteiro novo Ponteiro novo
Ponteiro antigo
Nome Ponteiro
0 1 2 3 4 5 6 7 8 9 - Posições
9 4 8 7 3 8
2.5 6 5 3 4
NOTA [5] = 8
Árvores e exemplos
Ronaldo Barbosa
Índice
Árvores
• Conceito de árvore
• Uma ideia de implementação
• Árvore de pesquisa
• Exemplos de uso de árvores de pesquisa
Árvores: aplicação
Na computação, o uso das estruturas em árvore são comuns:
Nó raiz
Gêmeos
Subárvores
Uma árvore binária é uma estrutura de dados útil quando precisam ser tomadas decisões
bidirecionais em cada ponto de um processo.
Imagem: https://emersonbsi.wordpress.com/2015/06/07/arvore-binaria-percursos-pre-em-e-pos-ordem/
Exemplo: percorrendo uma árvore em ordem
• Filas
• Pilhas
• Exemplo na memória do computador
Pilha
São estruturas de dados do tipo LIFO (last-in first-out), onde o último elemento a ser
inserido, será o primeiro a ser retirado.
Assim, uma pilha permite acesso a apenas um item de dados - o último inserido. Para
processar o penúltimo item inserido, deve-se remover o último.
São muito importantes quando precisamos armazenar um conjunto de dados para ser
utilizado em um determinado software.
Uma pilha montada a partir de uma lista
ligada