def ejercicio23(): arbol = Arbol() criaturas = [{ 'nombre': "Ceto", 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Tifon', 'derrotadoPor': 'Zeus', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Equidna', 'derrotadoPor': 'Argos Panoptes', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Dino', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Pefredo', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Enio', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Escila', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Medusa', 'derrotadoPor': 'Perseo', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Ladon', 'derrotadoPor': 'Heracles', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Ortro', 'derrotadoPor': 'Heracles', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Talos', 'derrotadoPor': 'Medea', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Cerbero', 'derrotadoPor': 'Teseo', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Toro de Creta', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Jabali de Erimanto', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Cierva Cerinea', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Aves de Estinfalo', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Basilisco', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }, { 'nombre': 'Sirenas', 'derrotadoPor': '', 'descripcion': '', 'capturadoPor': '' }] for elementos in criaturas: arbol = arbol.insertar_nodo(elementos['nombre'], elementos) arbol.inorden() print() # C talos = arbol.busqueda('Talos') if talos: print(talos.datos) # D print() lista = Lista() aux = [] arbol.nombreDioses(aux) for elementos in aux: cantidad = arbol.contarMuertes(elementos) dict = {'dios': elementos, 'cantidadMuertes': cantidad} lista.insertar(dict, 'cantidadMuertes') print('3 dioses con mas muertes:') print(lista.obtener_elemento(lista.tamanio() - 3)) print(lista.obtener_elemento(lista.tamanio() - 2)) print(lista.obtener_elemento(lista.tamanio() - 1)) print() # E criaturas = [] print('Criaturas derrotadas por Heracles') criaturas = arbol.criaturaDerrotadaPor('Heracles', criaturas) for elementos in criaturas: print(elementos) # F print() print('Criaturas sin derrotar') arbol.criaturasSinDerrotar() # H print() arbol.modificarCapturadoPor() # I print() busquedaCoincidencia = input( 'Letras iniciales del nombre que desea buscar:') arbol.busqueda_proximidad(busquedaCoincidencia) # J arbol.eliminar_nodo('Basilisco') arbol.eliminar_nodo('Sirenas') # K arbol.modificarAvesEstinfalo # L ladInfo, ladDatos = arbol.eliminar_nodo('Ladon') arbol = arbol.insertar_nodo('Dragon Ladon', ladDatos) # M print() print('Barrido por nivel') arbol.barrido_por_nivel() print() # N print('Criaturas capturadas por Heracles') arbol.capturadoPor('Heracles')
def ejercicioParcialArbol(): dinosaurios = [{ "nombre": "T-rex", "codigo": 22553, 'ubicacion': '3B' }, { "nombre": "T-rex", "codigo": 32423, 'ubicacion': '7G' }, { "nombre": "Velocirraptor", "codigo": 35623, 'ubicacion': '7G' }, { "nombre": "Triceratop", "codigo": 75673, 'ubicacion': '2A' }, { "nombre": "Allosaurus", "codigo": 756, 'ubicacion': '2A' }, { "nombre": "Sgimoloch", "codigo": 22873, 'ubicacion': '8R' }, { "nombre": "Raptor", "codigo": 56734, 'ubicacion': '3C' }, { "nombre": "Raptor", "codigo": 11938, 'ubicacion': '9B' }, { "nombre": "Diplodocus", "codigo": 425, 'ubicacion': '10C' }, { "nombre": "Diplodocus", "codigo": 16364, 'ubicacion': '2H' }, { "nombre": "Diplodocus", "codigo": 45243, 'ubicacion': '8F' }, { "nombre": "Velocirraptor", "codigo": 467, 'ubicacion': '10F' }, { "nombre": "Baryonix", "codigo": 44521, 'ubicacion': '8F' }, { "nombre": "Styracosaurus", "codigo": 98437, 'ubicacion': '5D' }, { "nombre": "Diplodocus", "codigo": 52345, 'ubicacion': '11A' }, { "nombre": "Raptor", "codigo": 31245, 'ubicacion': '3B' }, { "nombre": "Stygimoloch", "codigo": 56623, 'ubicacion': '3C' }] arbolNombre = Arbol() arbolCodigo = Arbol() for elementos in dinosaurios: arbolNombre = arbolNombre.insertar_nodo(elementos["nombre"], elementos) arbolCodigo = arbolCodigo.insertar_nodo(elementos["codigo"], elementos) # Punto 2 arbolNombre.inorden() print() # Punto 3 pos = arbolCodigo.busqueda(756) print(pos.datos) print() # Punto 5 arbolNombre.tRexEnIsla('T-rex') print() # Punto 6 nombre, datos = arbolNombre.eliminar_nodo('Sgimoloch') arbolNombre = arbolNombre.insertar_nodo( nombre, datos) # Eliminar y re-insertar porque el campo clave es el nombre arbolCodigo.modificarSgimoloch('Sgimoloch') # Punto 7 print('Ubicacion de los raptores: ') arbolNombre.ubicacionRaptores('Raptor') print() # Punto 8 cantidadDiplodocus = arbolNombre.contarDiplodocus('Diplodocus') print('La cantidad de Diplodocus en el parque es', cantidadDiplodocus)
} arbol = arbol.insertar_nodo(criaturas["nombre"], criaturas) dic = {} #Punto A print("Barrido de criaturas inorden y por quienes fueron derrotadas:") arbol.inorden() print() #Punto B arbol.añadir_descripcion() #añade descripcion sobre la criatura #Punto C buscado = "Talos" pos = arbol.busqueda(buscado) if pos: print("Informacion de criatura:", buscado, " ", pos.datos) print() #Punto D arbol.conta_criaturas_derrotadas(dic) def ordenar(item): return item[1] lista = list(dic.items()) lista.sort(key=ordenar, reverse=True) print("Heroes que derrotaron mayor cantidad de criaturas (3): ")