No necesita punteros para implementar una lista vinculada, las referencias serán suficientes. Lo único que los punteros tienen sobre las referencias es que admiten aritmética de punteros, y las listas vinculadas no usan eso.
Pero si insiste, puede usar los índices de la lista como punteros:
Nodo de clase:
def __init __ (self, val, nxt):
self.val = val
self.nxt = nxt
- ¿Cuál es el código C ++ más simple para el algoritmo A *?
- ¿Podría alguien ayudarme con el problema del algoritmo 'Intervalo casi ordenado'?
- Tenemos una serie de N palabras, ¿cómo podríamos clasificarlas con O (N) complejidad de tiempo?
- ¿Por qué se usa la compresión de backend?
- ¿La complejidad de los algoritmos de clasificación está relacionada con la cantidad de suposiciones que hago? ¿Por qué?
memoria = []
def malloc (obj):
memoria.append (obj)
return len (memoria) – 1
def libre (addr):
memoria [addr] = Ninguno
def deref (addr):
memoria de retorno [addr]
Usado:
>>> p1 = malloc (Nodo (“hola”, Ninguno))
>>> p2 = malloc (Nodo (“adiós”, p1))
>>> p3 = malloc (Nodo (“bla”, p2))
>>> p1, p2, p3
(0, 1, 2)
>>> deref (deref (p3) .nxt) .val
‘adiós’
>>> deref (p2 – 1) .val
‘Hola’