listas encadeadas

793 palavras 4 páginas
LISTAS ENCADEADAS OU
NÃO- SEQÜENCIAIS

Estrutura de Dados

Listas Lineares
• Como visto anteriormente, as operações básicas para o “nosso” TAD Lista Linear são:






FLVazia
Vazia
Retira
Insere
Imprime

• A implementação através de arrays possui a grande desvantagem de ter que prever a quantidade máxima de elementos da lista antes de sua utilização efetiva
Estrutura de Dados

Implementação de Listas com
Ponteiros

• Os elementos (nós ou células) da lista são registros com um dos componentes destinado a guardar o endereço do seu sucessor

x0

x1

x2

...

xn

NULL

• Desta forma, cada item da lista é encadeado com o seguinte através de uma variável do tipo Ponteiro
• Os nós da lista estão dispostos de maneira aleatória na memória (posições não obrigatoriamente contíguas) e são interligados por ponteiros: por isso é também chamada de lista não-seqüencial
Estrutura de Dados

A Lista Encadeada
• Assim, cada nó (ou célula) deve conter um item da lista e um “campo extra” para um apontador para o nó seguinte
• A alocação dinâmica de memória é a técnica utilizada: as posições de memória são alocadas
(desalocadas) quando são necessárias
(desnecessárias)
• Como visto, C faz a gerência de memória através das declarações malloc e free
• Existem outras implementações: simplesmente ou duplamente encadeadas e listas encadeadas circulares; com ou sem nós sentinela
Estrutura de Dados

Vantagens e Desvantagens
• Desvantagens
1. Acesso indireto aos elementos
2. Tempo variável para acessar os elementos (depende da posição do elemento)
3. Gasto de memória maior pela necessidade de um novo campo para o ponteiro

• Vantagens
1. A inserção e remoção de elementos podem ser feitas sem deslocar os itens seguintes da lista
2. Não há necessidade de previsão do número de elementos da lista; o espaço necessário é alocado em tempo de execução
3. Facilita o gerenciamento de várias listas (fusão, divisão,...)

Relacionados

  • Listas encadeadas
    544 palavras | 3 páginas
  • Lista Encadeada
    291 palavras | 2 páginas
  • Listas encadeadas
    509 palavras | 3 páginas
  • LISTA ENCADEADA
    290 palavras | 2 páginas
  • lista encadeada
    1592 palavras | 7 páginas
  • Lista encadeada
    2771 palavras | 12 páginas
  • Listas Encadeadas
    549 palavras | 3 páginas
  • Lista encadeada
    1159 palavras | 5 páginas
  • lista encadeada
    430 palavras | 2 páginas
  • LISTA ENCADEADA
    3744 palavras | 15 páginas