Example #1
0
 def barrido_por_nivel_huff(self):
     pendientes = Cola()
     pendientes.arribo(self)
     while(not pendientes.cola_vacia()):
         nodo = pendientes.atencion()
         print(nodo.info, nodo.frecuencia)
         if(nodo.izq is not None):
             pendientes.arribo(nodo.izq)
         if(nodo.der is not None):
             pendientes.arribo(nodo.der)
Example #2
0
 def barrido_por_nivel_huff(self):
     """Realiza el barrido por nivel del arbol con codigos de Huffman."""
     pendientes = Cola()
     pendientes.arribo(self)
     while (not pendientes.cola_vacia()):
         nodo = pendientes.atencion()
         print(nodo.info, nodo.datos)
         if (nodo.izq is not None):
             pendientes.arribo(nodo.izq)
         if (nodo.der is not None):
             pendientes.arribo(nodo.der)
Example #3
0
 def barrido_por_nivel(self):
     """Realiza el barrido por nivel del arbol."""
     pendientes = Cola()
     pendientes.arribo(self)
     while (not pendientes.cola_vacia()):
         nodo = pendientes.atencion()
         print(nodo.info)
         if (nodo.izq is not None):
             pendientes.arribo(nodo.izq)
         if (nodo.der is not None):
             pendientes.arribo(nodo.der)
def invertir_Cola(contenedor):
    obj_Cola = Cola()
    obj_Pila = Pila()

    for i in range(0, len(contenedor)):
        obj_Cola.arribo(contenedor[i])

    while(not obj_Cola.cola_vacia()):
        obj_Pila.apilar(obj_Cola.atencion())
    
    while(not obj_Pila.pila_vacia()):
        obj_Cola.arribo(obj_Pila.desapilar())

    for i in range(0, obj_Cola.tamanio()):
        contenedor[i] = obj_Cola.atencion()
    
    return contenedor
def sacar_Vocales(palabra):
    obj_Cola = Cola()
    nueva_Palabra = ''
    Volcales = ['a', 'e', 'i', 'o', 'u']
    
    for i in range(0, len(palabra)):
        obj_Cola.arribo(palabra[i])
    
    for i in range(0, len(palabra)):
        if (obj_Cola.en_frente() in Volcales):
            obj_Cola.atencion()
        else:
            obj_Cola.mover_final()
    
    while(not obj_Cola.cola_vacia()):
        nueva_Palabra += obj_Cola.atencion()
    
    return nueva_Palabra
Example #6
0
 def barrido_amplitud(self, ver_origen):
     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'])
                 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
Example #7
0
cola_combinada=Cola()


cola_valores11=[1,2,3,4,5]
cola_valores22=[6,7,8,9]


#carga
for elementos in cola_valores11:
    cola_valores1.arribo(elementos)

for elementos in cola_valores22:
    cola_valores2.arribo(elementos)

#---------------------------------------------------------------------------------
while (not cola_valores1.cola_vacia() and not cola_valores2.cola_vacia()):
    if cola_valores1.en_frente() <= cola_valores2.en_frente():
       cola_combinada.arribo(cola_valores1.atencion())
    else:
        cola_combinada.arribo(cola_valores2.atencion())

while not cola_valores1.cola_vacia():
    cola_combinada.arribo(cola_valores1.atencion())

while not cola_valores2.cola_vacia():
    cola_combinada.arribo(cola_valores2.atencion())
#-----------------------------------------------------------------------------------

#barrido
while not cola_combinada.cola_vacia():
    print(cola_combinada.atencion())
Example #8
0
from cola import Cola

cola = Cola()
cola2 = Cola()
cola_aux = Cola()

cola.arribo(1)
cola.arribo(5)
cola.arribo(9)
cola.arribo(20)

cola2.arribo(4)
cola2.arribo(8)
cola2.arribo(11)
cola2.arribo(89)

while (not cola.cola_vacia() and not cola2.cola_vacia()):
    aux = cola.atencion()
    aux2 = cola2.atencion()
    if (aux  >  aux2):   
        cola_aux.arribo(aux)
        cola_aux.arribo(aux2)
    elif (aux  <  aux2):   
        cola_aux.arribo(aux)
        cola_aux.arribo(aux2)
    else:
        cola_aux.arribo(aux)
        cola_aux.arribo(aux2)

while (not cola_aux.cola_vacia()):
    print(cola_aux.atencion())
Example #9
0
cola2 = Cola()

cola1.arribo(1)
cola1.arribo(3)
cola1.arribo(5)
cola1.arribo(7)
cola2.arribo(2)
cola2.arribo(4)
cola2.arribo(6)
cola2.arribo(8)

print('La cola 1 ordenada es: ')
cola1.print_cola()
print('La cola 2 ordenada es: ')
cola2.print_cola()

cant = cola1.tamanio()
for i in range (0, cant):
    if(cola1.en_frente() < cola2.en_frente()):
        cola1.mover_final()
    else:
        while (cola1.en_frente() > cola2.en_frente()):
            dato = cola2.atencion()
            cola1.arribo(dato)
        cola1.mover_final()
while(not cola2.cola_vacia()):
    dato = cola2.atencion()
    cola1.arribo(dato)

print('Ambas colas concatenadas y ordenadas: ')
cola1.print_cola()
Example #10
0
cola = Cola()
cola_aux = Cola()
cantidad = cola.tamanio()
posicion = 0
actores = Personajes("Luke Skywalker", "Alderaan")
cola.arribo(actores)
actores = Personajes("yoda", "Endor")
cola.arribo(actores)
actores = Personajes("Han Sol", "Tatooine")
cola.arribo(actores)
actores = Personajes("Jar Jar Binks", "martes")
cola.arribo(actores)
actores = Personajes("Ema", "Jupiter")
cola.arribo(actores)
actor_nuevo = Personajes("Naza", "tierra")
while (not cola.cola_vacia()):
    x = cola.atencion()
    if (x.planeta == "Alderaan" or x.planeta == "Endor"
            or x.planeta == "Tatooine"):
        print(x.nombre)
    if (x.nombre == "Luke Skywalker" or x.nombre == "Han Solo"):
        print(x.planeta)

actores = Personajes("Luke Skywalker", "Alderaan")
cola.arribo(actores)
actores = Personajes("yoda", "Endor")
cola.arribo(actores)
actores = Personajes("Han Sol", "Tatooine")
cola.arribo(actores)
actores = Personajes("Jar Jar Binks", "martes")
cola.arribo(actores)
Example #11
0
print ()

#Punto B
planeta_natal(cola_personajes, 'Luke Skywalker')
planeta_natal(cola_personajes, 'Han Solo')
print ()

#punto C
personaje2 = ('Rey', 'Jakku')
insertar_personaje_antes(cola_personajes, 'Yoda', personaje2)

# Punto D
eliminar_personaje_despues(cola_personajes, 'Jar Jar Binks')


while not cola_personajes.cola_vacia():
    print (cola_personajes.atencion())
print()


# Punto 12

cola1 = Cola()
cola2 = Cola()
cola3 = Cola()

datos1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
datos2 = [10, 11, 12, 13, 14, 15, 16]


for elemento in datos1:
cola.arribo(personaje_info)
personaje_info = Starwars('Luke Skywalker', 'Tatooine')
cola.arribo(personaje_info)
personaje_info = Starwars('Han Solo', 'Mos Eisley')
cola.arribo(personaje_info)
personaje_info = Starwars('Maestro Yoda', 'Endor')
cola.arribo(personaje_info)
personaje_info = Starwars('Princesa Leia', 'Alderaan')
cola.arribo(personaje_info)

print('la cola ingresada es: ')
for i in range(cola.tamanio()):
    print(cola.mover_final())
print('\n')

while (not cola.cola_vacia()):
    X = cola.atencion()
    # a
    if (X.planeta == 'Alderaan' or X.planeta == 'Endor'
            or X.planeta == 'Tatooine'):
        print('Los personajes del planeta Alderaan, Endor o Tatooine son:\n',
              X.personaje + ' -> ' + X.planeta)

    # b
    if (X.personaje == 'Luke Skywalker'):
        print('Luke Skywalker es del planeta:\n', X.planeta)

    if (X.personaje == 'Han Solo'):
        print('Han Solo es del planeta:\n', X.planeta)

    # C y D
Example #13
0
class Personajes(object):
    def __init__(self, nombre, planeta):
        self.nombre = nombre
        self.planeta = planeta


#cargamos
cola_pers_plan.arribo(Personajes('Han Solo', 'Corelia'))
cola_pers_plan.arribo(Personajes('Luke Skywalker', 'Alderaan'))
cola_pers_plan.arribo(Personajes('Chewbacca', 'Tatooine'))
cola_pers_plan.arribo(Personajes('Han solo', 'Endor'))
cola_pers_plan.arribo(Personajes('Yoda', 'Tatooine'))
cola_pers_plan.arribo(Personajes('Jar Jar Binks', 'Endor'))

while (not cola_pers_plan.cola_vacia()):
    print(cola_pers_plan.en_frente().nombre)
    cola_pers_aux.arribo(cola_pers_plan.atencion())
while (not cola_pers_aux.cola_vacia()):
    cola_pers_plan.arribo(cola_pers_aux.atencion())

while (not cola_pers_plan.cola_vacia()):
    aux = cola_pers_plan.en_frente()
    if (aux.planeta == 'Alderaan'):
        print('el personaje ' + aux.nombre + ' es de Alderaan')
    elif (aux.planeta == 'Tatooine'):
        print('el personaje ' + aux.nombre + ' es de Tatooine')
    if (aux.nombre == 'Yoda'):
        #cola_pers_plan.mover_final()
        cola_pers_aux.arribo(Personajes('anterior a yoda', 'Marte'))
    cola_pers_aux.arribo(cola_pers_plan.atencion())
Example #14
0
#         cola_numeros.arribo(numero)
#     else:
#         print(numero)
#     i += 1
# print()
# while(not cola_numeros.cola_vacia()):
#     print(cola_numeros.atencion())

cola_uno = Cola()
cola_dos = Cola()
cola_aux = Cola()
from random import randint

for i in range(0, 20):
    cola_uno.arribo(randint(2, 100))
    cola_dos.arribo(randint(2, 100))

cantidad = 0

while (not cola_uno.cola_vacia()):
    numero1 = cola_uno.atencion()
    while (not cola_dos.cola_vacia()):
        numero2 = cola_dos.atencion()
        if (numero1 == numero2):
            cantidad += 1
        cola_aux.arribo(numero2)
    while (not cola_aux.cola_vacia()):
        cola_dos.arribo(cola_aux.atencion())

print(cantidad)
Example #15
0
class Notif(object):
    def __init__(self,hora_notif, aplicacion_emitio, mensaje):
        self.hora_notif = hora_notif
        self.aplicacion_emitio = aplicacion_emitio
        self.mensaje=mensaje


Cola_notificaciones.arribo(Notif(12,"Twitter","Hola mundo"))
Cola_notificaciones.arribo(Notif(3,"Facebook","Estoy rindiendo"))
Cola_notificaciones.arribo(Notif(4,"Facebook","Todo bien"))
Cola_notificaciones.arribo(Notif(12,"Twitter","Python"))
Cola_notificaciones.arribo(Notif(12,"Instagram","Como estas"))

#A
while(not Cola_notificaciones.cola_vacia()):
    aux = Cola_notificaciones.atencion()
    if (aux.aplicacion_emitio =='Facebook'):
        aux.mensaje.pop
    Cola_aux.arribo(aux)

    print(Cola_aux)

while(not Cola_aux.cola_vacia()):
    Cola_notificaciones.arribo(Cola_aux.atencion())

#B
while(not Cola_notificaciones.cola_vacia()):
    aux = Cola_notificaciones.atencion()
    if (aux.aplicacion_emitio =='Twitter' and aux.mensaje=="Python"):
        print('Las notificaciones de Twitter son : '+ aux.mensaje) 
Example #16
0

#carga
Cola_personajes.arribo(Personajes('Tony Stark', 'Ironman', 'M'))
Cola_personajes.arribo(Personajes('Steve Rogers', 'Capitán América', 'M'))
Cola_personajes.arribo(Personajes('Natasha Romanoff', 'Black Widow', 'F'))
Cola_personajes.arribo(Personajes('Robert Bruce Banner', 'Hulk', 'M'))
Cola_personajes.arribo(Personajes('Carol Danvers', 'Capitana marvel', 'F'))
Cola_personajes.arribo(Personajes('Scott Lang', 'Hombre hormiga', 'M'))

# while (Cola_personajes.cola_vacia()):
#     print(Cola_personajes.en_frente().nombre_per)
#     Cola_personajes.arribo(Cola_personajes.atencion())

#a
while (not Cola_personajes.cola_vacia()):
    aux = Cola_personajes.atencion()
    if (aux.nombre_superheroe == 'Capitana marvel'):
        print('el nombre del personaje capitana marvel es:  ' + aux.nombre_per)
    Cola_aux.arribo(aux)
#carga despues de que se vacia

while (not Cola_aux.cola_vacia()):
    Cola_personajes.arribo(Cola_aux.atencion())
# for elementos in Cola_personajes:
#      Cola_personajes.arribo(elementos)

while (not Cola_personajes.cola_vacia()):
    aux = Cola_personajes.atencion()
    if (aux.genero == 'F'):
        print('Los personajes femeninos son: ' + aux.nombre_per)