Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
class Nodo:
def __init__( self, dato ):
self.dato = dato
self.sig = None
#def asignarDato( self, dato ):
# self.dato = dato
def asignarSig( self, sig ):
self.sig = sig
def obtenerSig( self ):
return self.sig
def obtenerDato( self ):
return self.dato
class ListaEnlazada:
def __init__( self ):
self.cabeza = None
self.cola = None
self.tamanio = 0
def encolar( self, dato ):
nuevoNodo = Nodo( dato )
print 'Encolando: '+str(dato)
if not self.cola:
nuevoNodo.asignarSig( None )
self.cabeza = nuevoNodo
self.cola.asignarSig( nuevoNodo )
self.cola = nuevoNodo
self.tamanio += 1
def desencolar( self ):
if self.cabeza:
print 'Desencolando.'
self.cabeza = self.cabeza.obtenerSig()
self.tamanio -= 1
print 'No existen datos para desencolar.'
def obtenerCabeza( self ):
if self.cabeza:
return self.cabeza.obtenerDato()
def obtenerTamanio( self ):
return self.tamanio
def imprimirLista( self ):
nodo = self.cabeza
print '-->',
while nodo:
print str(nodo.obtenerDato())+' -->',
nodo = nodo.obtenerSig()
print 'Nulo'
miLista = ListaEnlazada()
for i in xrange( 4 ):
for i in xrange( 5 ):
print 'Dato en la cabeza: '+str( miLista.obtenerCabeza() )
print 'Tamanio de la Cola: '+str( miLista.obtenerTamanio() )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment