public IActionResult Developer(string Titulo, string Descripcion, string Proyecto, string Prioridad, string Fecha) { Arbol <Tarea> HeapTarea; InfoTarea NuevaTarea = new InfoTarea(); Tarea PrioridadT = new Tarea(); //Singleton.Instance.HeapSort; if (Verificar(Titulo)) { // Recibe información y la almacena dentro de la tabla hash NuevaTarea.Titulo = Titulo; NuevaTarea.Descripcion = Descripcion; NuevaTarea.Proyecto = Proyecto; NuevaTarea.FechaEntrega = Fecha; NuevaTarea.Prioridad = Convert.ToInt32(Prioridad); Singleton.Instance.Thash.Insertar(NuevaTarea, NuevaTarea.Titulo); //Se agrega información dentro del heap PrioridadT.Titulo = Titulo; PrioridadT.Prioridad = Convert.ToInt32(Prioridad); Singleton.Instance.THeap.Insertar(PrioridadT); //.Instance.HeapSort.Vaciar(); HeapTarea = new Arbol <Tarea>(); HeapTarea = Singleton.Instance.THeap; Singleton.Instance.HeapSort.InsertarFinal(HeapTarea.Eliminar().valor); return(View(Singleton.Instance.HeapSort)); } else { ViewBag.Mensaje = "Título incorrecto, intente de nuevo"; return(View()); } }
static void Main(string[] args) { int opcion; string dat; string key; Arbol arbol = new Arbol(); Menu(); void Menu() { Console.WriteLine("MENU ARBOLES BINARIOS" + '\n'); Console.WriteLine("1. Insertar nodos"); Console.WriteLine("2. Eliminar nodos"); Console.WriteLine("3. Recorrido Preorden"); Console.WriteLine("4. Recorrido Inorden"); Console.WriteLine("5. Recorrido Posorden"); Console.WriteLine("6. Busqueda Recursiva"); Console.WriteLine("7. Busqueda Iterativa"); Console.WriteLine("8. Salir"); Console.Write('\n' + "Seleccione una opción: "); opcion = int.Parse(Console.ReadLine()); switch (opcion) { case 1: opcion = 1; { Console.Clear(); Console.WriteLine("CREAR NODO" + '\n'); Console.Write("Ingrese un nombre a agregar: "); dat = Console.ReadLine(); arbol.Insertar(dat); Console.ReadKey(); Console.Clear(); Menu(); break; } case 2: opcion = 2; { Console.Clear(); Console.WriteLine("ELIMINAR NODO" + '\n'); arbol.Eliminar(); Console.ReadKey(); Console.Clear(); Menu(); break; } case 3: opcion = 3; { Console.Clear(); Console.WriteLine("RECORRIDO EN PREORDEN" + '\n'); arbol.Preorden(arbol.raiz); Console.ReadKey(); Console.Clear(); Menu(); break; } case 4: opcion = 4; { Console.Clear(); Console.WriteLine("RECORRIDO EN INORDEN" + '\n'); arbol.Inorden(arbol.raiz); Console.ReadKey(); Console.Clear(); Menu(); break; } case 5: opcion = 5; { Console.Clear(); Console.WriteLine("RECORRIDO EN POSORDEN" + '\n'); arbol.Posorden(arbol.raiz); Console.ReadKey(); Console.Clear(); Menu(); break; } case 6: opcion = 6; { Console.Clear(); Console.WriteLine("BÚSQUEDA RECURSIVA" + '\n'); Console.Write("Ingrese el elemento a buscar: "); key = Console.ReadLine(); arbol.BusquedaRecursiva(key, arbol.raiz); Console.ReadKey(); Console.Clear(); Menu(); break; } case 7: opcion = 7; { Console.Clear(); Console.WriteLine("BÚSQUEDA ITERATIVA" + '\n'); Console.Write("Ingrese el elemento a buscar: "); key = Console.ReadLine(); arbol.BusquedaIterativa(key, arbol.raiz); Console.ReadKey(); Console.Clear(); Menu(); break; } case 8: opcion = 8; { Console.Clear(); Console.WriteLine("Pulse cualquier tecla para salir"); Console.ReadKey(); break; } default: { Console.WriteLine("Opción no válida"); break; } } } }