Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Strutture dinamiche e astratte
1.
2. Per studiare queste strutture dobbiamo sapere usare i puntatori, giacchè le strutture dati
dinamiche sono basate sull’utilizzo di questi.
Sono definite dinamiche perchè posso allocare e deallocare gli elementi man mano che
servono, i loro collegamenti possono cambiare durante l’esecuzione del programma.
Vengono definite astratte perchè sono strutture la cui realizzazione interna è nascosta al
main attraverso funzioni di libreria che permettono di operare sulla struttura, inserendo
o estraendo dati, senza toccarla direttamente.
Le strutture dati dinamiche possono adattarsi a qualsiasi situazione.
3. La lista è un insieme di nodi collegati linearmente. I nodi sono divisi in due parti, da una
parte contengono il dato e dall’altra un puntatore all’elemento successivo della lista.
testa
DATO PUNTATORE NULL
Un nodo funge da testa della lista, e da questo si accede a tutti gli altri nodi della lista.
Conoscendo un nodo interno alla lista, è possibile accedere ai nodi successivi, ma non a
quelli precedenti.
4. Se la lista è vuota, la testa punterà a NULL. testa
La lista è strutturata nella seguente maniera:
typedef struct nodo{
int dato;
struct nodo * next;
}Nodo;
NULL
Con questo creo il primo nodo.
Il dato è un valore intero e next è un puntatore alla struttura nodo.
5. Ci sono diverse operazioni che si possono effettuare sulle liste:
L’inserimento in testa e la cancellazione
L’inserimento in mezzo e la cancellazione
L’inserimento in coda e la cancellazione
La ricerca di nodi
Nel blog potete trovare alcuni esempi di come effettuare queste operazioni.
6. I nodi contengono un puntatore sia verso il nodo precedente che verso quello successivo.
punt dato punt
7. Ogni nodo contiene due (o più) puntatori ad altri nodi che sono detti suoi "figli”: dato un
nodo, è possibile accedere a tutti i suoi discendenti.
Un albero non deve avere cicli, un nodo non può ritornare al nodo di partenza
Ciascun nodo deve essere figlio di un solo padre.
Ogni albero è formato da una radice, nodi intermedi e foglie.