Junior — Middle
Puoi spiegare cos'è una lista semplicemente collegata e come viene implementata in Python?
sobes.tech AI
Risposta dell'AI
Una lista semplicemente collegata è una struttura dati composta da nodi, in cui ogni nodo contiene dati e un riferimento al nodo successivo nella lista. A differenza di un array, gli elementi non sono memorizzati in un'area di memoria contigua, il che consente di inserire e rimuovere elementi in modo efficiente.
Esempio di implementazione di una lista semplicemente collegata in Python:
class Nodo:
def __init__(self, dati):
self.dati = dati
self.next = None
class ListaSemplicementeCollegata:
def __init__(self):
self.testa = None
def aggiungi(self, dati):
nuovo_nodo = Nodo(dati)
if not self.testa:
self.testa = nuovo_nodo
return
corrente = self.testa
while corrente.next:
corrente = corrente.next
corrente.next = nuovo_nodo
def stampa_lista(self):
corrente = self.testa
while corrente:
print(corrente.dati, end=' -> ')
corrente = corrente.next
print('None')
# Uso
sll = ListaSemplicementeCollegata()
sll.aggiungi(1)
sll.aggiungi(2)
sll.aggiungi(3)
sll.stampa_lista() # Output: 1 -> 2 -> 3 -> None