Escolar Documentos
Profissional Documentos
Cultura Documentos
Listas Ligadas
Funes normais de implementar em listas ligadas:
int insereInicio(Lista* l, int info); // adiciona no inicio int insereFim(Lista* l, int info); // adiciona no fim
typedef struct {
Nodo* head; Nodo* tail; } ListaSL;
3
} else {
l->tail->proximo = n; l->tail = n; }
return 1;
}
} else {
l->tail->proximo = n; l->tail = n; }
return 1;
}
} else {
l->tail->proximo = n; l->tail = n; }
return 1;
}
} else {
n->proximo = l->head; l->head = n; }
return 1;
}
Paulo } Santos
}
12
typedef struct {
Nodo *head; Nodo *tail; } ListaDL;
13
14
15
16
17
if (aux == NULL)
return 0; else
return 1;
18
Paulo Santos
19
20
Listas Ligadas
Outras funes que tambm podem ser implementados:
int insereOrdenado(Lista *l, int info); // Insere de forma ordenada int numElemento(Lista *l); // Devolve o nmero de elementos
21
Sporting Acadmica
(c) Paulo Santos
22
23
Acadmica Porto
Braga - Belenenses
24
Belenenses - Porto
(c) Paulo Santos
25
26
27
Algoritmo Next Fit: O mesmo que o anterior, s que em vez de partir sempre do inicio da lista, parte da ltima posio.
Algoritmo Best Fit: Verifica toda a lista para encontrar o segmento livre cujo tamanho melhor se aproxima s necessidades Algortimo Worst Fit: Verifica toda a lista para encontrar o segmento livre com o maior tamanho.
(c) Paulo Santos
28
Entra: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Sai: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
FIFO = LILO
(c) Paulo Santos
29
Entra: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Sai: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
FILO = LIFO
(c) Paulo Santos
30
31
prato a entrar
o ltimo a sair.
Pilha
(c) Paulo Santos
32
Colocar um elemento na Fila inserir no fim da Lista. Retirar um elemento da FIa remover no inicio da Lista.