Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1
Listas Encadeadas
Características:
Tamanho da lista não é pré-definido
Cada elemento guarda quem é o próximo
Elementos não estão contíguos na memória
info
NULL
prox info
info NULL
info
prox info
NULL
prox
© R. O. Prates Algoritmos e Estrutura de Dados II
Sobre os Elementos da Lista
Elemento: guarda as informações sobre
cada elemento.
Para isso define-se cada elemento como uma
estrutura que possui:
campos de informações
ponteiro para o próximo elemento
info
prox
Último
Primeiro
Uma lista pode ter um apontador para o último
elemento
© R. O. Prates Algoritmos e Estrutura de Dados II
Implementação em C
typedef int TipoChave;
typedef struct {
TipoChave Chave;
/* outros componentes */
} TipoItem;
typedef struct {
Apontador Primeiro, Ultimo;
} TipoLista;
Primeiro
NULL
Último
void FLVazia(TipoLista *Lista)
{
Lista->Primeiro = (Apontador) malloc(sizeof(Celula));
Lista->Ultimo = Lista->Primeiro;
Lista->Primeiro->Prox = NULL;
}
Último
Primeiro
3 opções de posição onde pode inserir:
1ª. posição
última posição
Após um elemento qualquer E
NULL
prox
Último
Primeiro
Último
Primeiro
NULL
prox
Último
Elem E
Último
Último
Primeiro
Último
Primeiro Anterior
Elem E
Último
Primeiro
Anterior