Escolar Documentos
Profissional Documentos
Cultura Documentos
Estrutura de Strucs
Estrutura da Listas
Estrutura de Lista Encadeada
Estrutura de Fila
Estrutura de Pilha
Estruturação de Dados
Estruturação de dados:
Definição: É uma maneira de organizada e eficiente de armazenar, gerenciar e
manipular dados.
Por que estruturar dados?
A estruturação de dados é fundamental por vários motivos, como: eficiência,
organização, reusabilidade e desempenho.
Quais são as vantagens e desvantagens de estruturar dados?
Vantagens: Eficiência, organização, reusabilidade e escalabilidade.
Desvantagens: Complexidade e limitações.
Quais são as principais classificações de estrutura?
Estruturas lineares:
Que apresenta único caminho e destino, desencadeando em um final.
Ex.: Vetores, listas, filas e pilhas.
Estruturas não lineares:
Que apresenta múltiplos caminhos e destinos, desencadeando em múltiplos finais.
Ex.: Grafos, árvores, AVL.
Estruturas homogêneas e heterogêneas:
Homogêneas: São conjuntos de dados formados pelo mesmo tipo de dado primitivo.
Heterogêneas: conjuntos de dados formados por tipos de dados primitivos diferentes.
Estruturas dinâmicas e estáticas:
Dinâmica: Quando seu tamanho é variável e pode ser alterado em tempo de execução.
Estática: Quando seu tamanho é fixo e definido em tempo de programação.
Defina ponteiro:
É uma variável que armazena endereço de memória de outras variável.
STRUCTS
Structs
Definição: Uma estrutura de dados que permite agrupar diferentes tipos de dados sob
um único nome.
Como usar?
É utilizada para organizar dados heterogêneos, onde cada membro da “Struct” pode
ter um tipo de dado diferente, e pode criar tipos de dados diferentes.
Onde se aplica?
É aplicado em:
Gerenciamento de dados de pessoas;
Representação de pontos no espaço tridimensional;
Modelagem de registro em sistemas de gerenciamento.
Quais as principais características?
Heterogeneidade, agrupamento lógico, facilidade de acesso, personalização e
economia de memória.
Classificação:
Classificados como estruturas heterogêneas e dinâmica.
LISTA
Lista
Definição;
É uma estrutura de dado que armazena uma coleção de elementos sequencialmente.
Cada elemento pode ser acessado por um índice ou posição na lista.
Classificação:
As listas podem ser classificadas como estruturas lineares por serem organizadas de
forma sequencial, dinâmica e homogênea.
Como usar uma lista?
Pode ser usada em várias linguagens, onde pode criar uma lista simplesmente usando
colchetes, onde pode adicionar elementos acessados, removidos e realizar operações;
Para que serve?
Listas são utilizadas para armazenar e manipular coleção de dados de maneira
eficiente.
Onde se aplica?
Armazenamento de dados sequenciais;
Implementação de filas e pilhas;
Representação de sequências ordenadas;
Principais características:
Acesso por índice;
Flexibilidade;
Operações comuns;
Implementação variada;
Listas encadeadas:
Definição:
Um lista encadeada é uma estrutura de dados no qual os elementos são armazenados
em nós, e cada nó aponta para o próximo na sequência. Cada nó contém uma
elemento e uma referência (ponteiro) para o próximo nó.
Classificação:
Classificado como estrutura linear, homogênea e dinâmica.
Como usar?
É uma lista que envolve a criação de uma estrutura de nó que contém o dado e um
ponteiro para o próximo nó.
Para que serve?
São úteis quando a quantidade de elementos é desconhecida antecipadamente e
quando inserções e remoções são necessárias com frequência.
Onde se aplica?
Implementação de filas e pilhas
Quando a alocação dinâmica de memória é necessária;
Em situações onde a estrutura precisa crescer ou encolher dinamicamente.
Principais características:
Alocação dinâmica;
Inserção/Remoção eficiente;
Espaço flexível;
Acesso sequencial;
Listas duplamente encadeadas:
Definição
É uma variação onde cada nó possui uma referência tanto para o próximo quanto para
o anterior.
Classificação:
São classificadas como lineares.
Como usar?
É utilizada semelhante a encadeada, mas cada nó possui um ponteiro para o próximo e
outro para o anterior.
Para que serve?
Para obter vantagens de operações de acesso bidirecional aos elementos da lista.
Onde se aplica?
Implementação de editores de texto.
Operações que exigem acesso em ambas as direções.
Principais características:
Acesso bidirecional;
Inserções/Remoções eficiente;
Complexidade adicional;
Espaço flexível.
PILHAS
Pilhas
Definição:
Uma pilha é uma estrutura linear que segue o princípio de LIFO (last in, first out), que
significa que o último a entrar é o primeiro a sair. Os elementos são adicionados e
removidos apenas pelo TOPO da pilha.
Classificação:
As pilhas são classificadas como estruturas lineares, pois os elementos são organizados
de forma sequencial.
Como usar?
O topo sempre inicia na posição 0. O uso da pilha geralmente envolve operações como
“push” para adicionar um elemento ao topo e “pop” para remover um elemento do
topo. Além disso é como ter a operação “peek” para acessar o elemento do topo sem
removê-lo.
Principais características:
LIFO;
Operações básicas;
Eficiência;
Limitado;
Estrutura simples.
FILAS
Filas:
Definição:
Uma fila é uma estrutura de dados linear que segue o princípio de FIFO (first in, first
out), que significa que o primeiro a entrar é o primeiro a sair. Os elementos são
adicionados na calda e removidos na cabeça.
Classificação:
São classificadas como estrutura linear, pois os elementos são organizados de forma
sequencial.
Como usar?
O uso de uma fila envolve operações “enfileirar” (add) para adicionar um elemento ao
final da fila e “desenfileirar” (remove) para remover o primeiro elemento da fila e
ainda precisamos do SIZE para saber se a fila está cheia ou vazia.
Para que serve?
Utilizada em situações em que a ordem de processamento é importante e a primeira
operação realizada dever a primeira a ser desfeita.
Principais características:
FIFO;
Operações básicas;
Eficiência;
Estrutura simples.