예제 #1
0
 def barrido_amplitud(self, ver_origen):
     """Barrido en amplitud del grafo."""
     cola = Cola()
     while (ver_origen < self.tamanio()):
         vertice = self.inicio.obtener_elemento(ver_origen)
         if (not vertice['visitado']):
             vertice['visitado'] = True
             cola.arribo(vertice)
             while (not cola.cola_vacia()):
                 nodo = cola.atencion()
                 print(nodo['info'], nodo['data'])
                 aristas = 0
                 while (aristas < nodo['aristas'].tamanio()):
                     adyacente = nodo['aristas'].obtener_elemento(aristas)
                     pos_vertice = self.buscar_vertice(adyacente['destino'])
                     nuevo_vertice = self.inicio.obtener_elemento(
                         pos_vertice)
                     if (not nuevo_vertice['visitado']):
                         nuevo_vertice['visitado'] = True
                         cola.arribo(nuevo_vertice)
                     aristas += 1
         ver_origen += 1
예제 #2
0
from tda_cola import Cola
from random import randint
cola1 = Cola()
cola2 = Cola()
cola_final = Cola()

lista1 = [1, 6, 10, 25, 34]
lista2 = [7, 11, 16, 21, 32]

print ('Para cola 1, agregamos: ')
for i in (lista1):
     cola1.arribo(i)
     print (i)


print ()

print ('Para cola 2, agregamos: ')
for i in (lista2):
     cola2.arribo(i)
     print (i)

print()

while (not cola1.cola_vacia() and not cola2.cola_vacia()):
 ### comparamos elemento a elemento desde el frente de cada cola con la otra
     if (cola1.en_frente() < cola2.en_frente()):
         cola_final.arribo(cola1.atencion())
     else:
         cola_final.arribo(cola2.atencion())
 ####si una de las dos colas esta vacia, cargaremos el elemento restante de la otra cola ,a la cola final
예제 #3
0
personaje = Cola()

class persona(object):
    nombre_personaje, nombre_super, genero = '', '', ''

    def __init__(self, nombre_personaje, nombre_super, genero):
            self.nombre_personaje = nombre_personaje
            self.nombre_super = nombre_super
            self.genero = genero
          

    def __str__(self):
          return self.nombre_personaje+': ' + self.nombre_super +'. '+ ' Genero: '+ self.genero

dato = persona ('tony stark', 'iron man', 'm') 
personaje.arribo(dato)
dato = persona ('steve rogers', 'capitan america', 'm')
personaje.arribo(dato)
dato = persona ('thor odinson', 'thor.', ' m')
personaje.arribo(dato)
dato = persona ('sam wilson', 'falcon ', 'm')
personaje.arribo(dato)
dato = persona ('carol danvers', 'capitana marvel', 'f')
personaje.arribo(dato)
dato = persona ('nati romanoff', 'black widow', 'f')
personaje.arribo(dato)
dato = persona ('wanda maximoff', 'bruja escarlata', 'f')
personaje.arribo(dato)
dato = persona ('stephen strange', 'doctor strange', 'm')
personaje.arribo(dato)
dato = persona ('bruce banner', 'hulk', 'm')