Пример #1
0
class Estructuras:
    def __init__(self):
        self.list = Lista_s()
        self.abb = Arbol_b()
        self.avl = Avl_Tree()
        self.hash = Hash(100)

    def menu_list(self, opcion):
        if (opcion == 1):
            nombre, apellido, telefono, mail = agregar_datos()
            self.list._insertar(nombre, apellido, telefono, mail)
            return (False)
        if (opcion == 2):
            print("---eliminar contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.list.eliminar(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 3):
            print("---imprimir contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.list.imprimir_contacto(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 4):
            print("---Mostrando Lista de contactos---")
            self.list.imprimir_todos()
            print("----------------------------------")
            return (False)
        if (opcion == 5):
            print("---exit---------------------------")
            print("saliendo de lista enlazada")
            print("----------------------------------")
            return (True)

    def menu_2_3(self, opcion):
        if (opcion == 1):  #agregar contacto
            print("---agregar contacto---------------")
            nombre, apellido, telefono, mail = agregar_datos()
            self.arbol_23.insertar(nombre, apellido, telefono, mail)
            print("----------------------------------")
            return (False)
        if (opcion == 2):
            print("---eliminar contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.arbol_23.remove(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 3):
            print("---imprimir contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.arbol_23.mostrar_contacto(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 4):
            print("---Mostrando Lista de contactos---")
            self.arbol_23.mostrar_todos()
            print("----------------------------------")
            return (False)
        if (opcion == 5):
            print("---exit---------------------------")
            print("saliendo de Arbol 2-3")
            print("----------------------------------")
            return (True)

    def menu_abb(self, opcion):
        if (opcion == 1):
            print("---agregar contacto---------------")
            nombre, apellido, telefono, mail = agregar_datos()
            self.abb.add(nombre, apellido, telefono, mail)
            print("----------------------------------")
            return (False)
        if (opcion == 2):
            print("---eliminar contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.abb.delete(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 3):
            print("---imprimir contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.abb.print_contact(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 4):
            print("---Mostrando Lista de contactos---")
            self.abb.in_order(self.abb.get_root())
            print("----------------------------------")
            return (False)
        if (opcion == 5):
            print("---exit---------------------------")
            print("saliendo de Arbol binario de busqueda")
            print("----------------------------------")
            return (True)

    def menu_avl(self, opcion):
        if (opcion == 1):  #agregar contacto
            print("---agregar contacto---------------")
            nombre, apellido, telefono, mail = agregar_datos()
            self.avl.add(nombre, apellido, telefono, mail)
            print("----------------------------------")
            return (False)
        if (opcion == 2):
            print("---eliminar contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.avl.delete(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 3):
            print("---imprimir contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.avl.print_contact(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 4):
            print("---Mostrando Lista de contactos---")
            self.avl.in_order(self.avl.get_root())
            print("----------------------------------")
            return (False)
        if (opcion == 5):
            print("---exit---------------------------")
            print("saliendo de Arbol AVL")
            print("----------------------------------")
            return (True)

    def menu_hash(self, opcion):
        if (opcion == 1):
            print("---agregar contacto---------------")
            nombre, apellido, telefono, mail = agregar_datos()
            self.hash.put(nombre, apellido, telefono, mail)
            print("----------------------------------")
            return (False)
        if (opcion == 2):
            print("---eliminar contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.hash.H_eliminar(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 3):
            print("---imprimir contacto--------------")
            print("ingrese apellido:")
            ape = input()
            self.hash.H_imprimir_contacto(ape)
            print("----------------------------------")
            return (False)
        if (opcion == 4):
            print("---Mostrando Lista de contactos---")
            self.hash.H_imprimir_todo()
            print("----------------------------------")
            return (False)
        if (opcion == 5):
            print("---exit---------------------------")
            print("saliendo de Hash")
            print("----------------------------------")
            return (True)