Una semplice implementazione di elenchi collegati singolarmente in Java

Pubblicato: 2013-11-27

Implementazione di Single Linked List in Java

In questo tutorial mostrerò la semplice implementazione dell'elenco con collegamenti singoli in Java.

Un elenco collegato è una serie di nodi in memoria tali che:

  • C'è un nodo di partenza.
  • Ogni nodo contiene un puntatore che punta al nodo successivo o figlio.
  • Se un nodo non ha un nodo figlio, il suo puntatore è impostato su NULL.
  • Ogni nodo contiene dati, forse molti.
  • L'elenco collegato ha anche funzioni che gestiscono l'elenco eseguendo aggiunte, cancellazioni, modifica dei dati di un nodo, restituzione del numero di nodi, ecc., ecc.

Se hai una delle seguenti domande, sei nel post giusto del blog:

  • Come eliminare un determinato nodo nell'elenco collegato
  • Elimina un nodo nel mezzo di un elenco collegato singolarmente
  • ELENCO COLLEGATI SINGOLAMENTE :: RIMOZIONE (CANCELLA)
  • Rimozione di nodi da un elenco collegato singolarmente

Un elenco collegato viene utilizzato per gli stessi scopi di un array. Tuttavia, l'elenco collegato presenta alcuni vantaggi: un array ha una dimensione fissa (a meno che non sia allocato dinamicamente), un elenco collegato può crescere prelevando nuova memoria dall'heap secondo necessità. Se memorizzi un elenco in un array e poi elimini un elemento nel mezzo, devi spostare molti elementi in basso di uno per colmare il divario. Ma in un elenco collegato, devi semplicemente reindirizzare i puntatori attorno al nodo per eliminarlo, quindi lo elimini.

Ecco una semplice implementazione dell'elenco con collegamenti singoli:

Sentiti libero di fornire il tuo commento se trovi bug o altre condizioni che non vengono gestite correttamente :). Il tuo feedback è molto apprezzato.