Nodo
Dal latino nodus, il termine nodo ha vari usi nei campi dell'astronomia, della fisica e dell'informatica.
In astronomia, un nodo è ogni punto opposto in cui l'orbita di una stella interseca l'eclittica. Si può parlare di nodo ascendente (quando il corpo segue l'orbita passando da sud a nord) o di nodo discendente (se passa nella direzione opposta). Questi nodi sono diametralmente opposti.
In fisica, un nodo è un punto che rimane fisso su un corpo vibrante. È quindi il punto di un'onda stazionaria che ha ampiezza zero in qualsiasi momento. Per esempio: in una corda vibrante, i nodi sono di solito le estremità.
Un altro uso del concetto di nodo è in elettronica, dove è un mezzo di connessione tra due o più elementi di un circuito.
L'acronimo NO-DO sta per Noticiero Documental ed era il nome di un breve cinegiornale che i cinema spagnoli dovevano mostrare prima dei film tra il 1942 e il 1981.
Un nodo, in informatica, è un componente che fa parte di una rete. In altre parole, che si tratti di Internet o di una Intranet (utilizzata in ambienti chiusi, con accesso limitato agli utenti autorizzati), ogni server o computer è un nodo ed è collegato a uno o più altri nodi.
La programmazione informatica considera un nodo come ciascuno degli elementi di una lista collegata, un albero o un grafico in una struttura di dati. Ogni nodo ha le sue caratteristiche e ha diversi campi; almeno uno di questi deve funzionare come punto di riferimento per un altro nodo.
La lista collegata
È una struttura di dati che può essere utilizzata per implementare nuove strutture (come code, pile e loro derivati) e consiste in una serie di nodi che memorizzano, oltre alle informazioni desiderate, un collegamento, puntatore o riferimento al nodo che lo precede, al nodo che lo segue, o uno all'altro. Il vantaggio fondamentale di una lista collegata rispetto a un vettore convenzionale è che i suoi elementi non hanno un ordine rigido o legato a quello che avevano al momento in cui sono stati memorizzati, ma dipende dal collegamento che ogni nodo ha, e può essere modificato quando lo si desidera.
Le liste collegate sono un tipo di dati autoreferenziale, poiché hanno un collegamento con un altro elemento che appartiene allo stesso tipo. Vale la pena menzionare che mentre permettono l'intersezione e la cancellazione dei loro nodi, non permettono l'accesso casuale ad essi. Tra i diversi tipi di liste collegate ci sono la semplice, la doppiamente collegata, la circolare e la doppiamente circolare.
Ci sono molti linguaggi di programmazione attraverso i quali è possibile implementare una lista collegata; alcuni esempi sono Scheme e Lisp, che offrono oggetti di questo tipo, così come metodi per la loro comoda amministrazione. All'interno del gruppo dei linguaggi imperativi e orientati agli oggetti, ci sono anche strumenti che facilitano la loro creazione.
È interessante notare che un nodo può contenere un'altra lista; questa pratica, anche se molto complessa e non necessaria per una semplice applicazione, può essere estremamente utile e permettere un livello di ottimizzazione molto alto. Il Lisp è stato il primo linguaggio ad implementare questo modello, ma alla fine è diventato un aspetto comune della programmazione funzionale.
Infine, le liste collegate possono essere create dinamicamente (cioè a runtime) o a mano, attraverso il caricamento umano, e sono molto comuni nei grandi database.
Il Lisp è il primo linguaggio ad implementare questo modello, ma alla fine è diventato un aspetto comune della programmazione funzionale.
Infine, le liste collegate possono essere create dinamicamente (cioè a runtime) o a mano, attraverso il caricamento umano, e sono molto comuni nei database di alto volume.