public static void PrintActions() { var stackRoot = new StackRoot(); // Add with linked list Console.WriteLine("\r\n-------------------------"); Console.WriteLine($"Insere na lista com LinkedList"); Console.WriteLine("-------------------------\r\n"); stackRoot.AddWithLinkedList("Mauricio"); Console.WriteLine($"{stackRoot}"); stackRoot.AddWithLinkedList("Guilherme"); Console.WriteLine($"{stackRoot}"); // Remove of list Console.WriteLine("\r\n-------------------------"); Console.WriteLine($"Remove da lista"); Console.WriteLine("-------------------------\r\n"); Console.WriteLine($"Lista completa:"); Console.WriteLine($"{stackRoot}"); Console.WriteLine("-------------------------\r\n"); stackRoot.Remove(); stackRoot.Remove(); Console.WriteLine($"{stackRoot}"); // Check empty list Console.WriteLine("\r\n-------------------------"); Console.WriteLine($"Verifica lista vazia"); Console.WriteLine("-------------------------\r\n"); Console.WriteLine($"{stackRoot.isEmpty()}"); // Add with stack var stack = new Stack(); Console.WriteLine("\r\n-------------------------"); Console.WriteLine($"Insere na lista com Stack"); Console.WriteLine("-------------------------\r\n"); stack.Add("Mauricio"); Console.WriteLine($"{stack}"); stack.Add("Guilherme"); Console.WriteLine($"{stack}"); // Remove stack Console.WriteLine("\r\n-------------------------"); Console.WriteLine($"Remove com Stack"); Console.WriteLine("-------------------------\r\n"); Console.WriteLine($"Peek: {stack.Peek()}"); stack.Remove(); Console.WriteLine($"Peek: {stack.Peek()}"); stack.Remove(); Console.WriteLine($"{stack}"); }
static void Main(string[] args) { int choice; int innerChoice = 0; Console.WriteLine("------------------------Data Structures--------------------------"); Console.WriteLine("1. Stack"); Console.WriteLine("2. Queue"); Console.WriteLine("3. Linked List"); int.TryParse(Console.ReadLine(), out choice); switch (choice) { case 1: Stack stack = new Stack(); while (true) { Console.WriteLine("1. Add"); Console.WriteLine("2. Remove"); Console.WriteLine("3. Display"); Console.WriteLine("4. Sort"); Console.WriteLine("5. Get Top Value"); Console.WriteLine("6. Exit from Stack"); choice = int.Parse(Console.ReadLine()); switch (choice) { case 1: Console.WriteLine("Enter Element to be Inserted"); stack.Add(int.Parse(Console.ReadLine())); break; case 2: Console.WriteLine("Removed " + stack.Remove() + " from the top of the stack"); break; case 3: stack.Display(); break; case 4: stack.Sort(); Console.WriteLine("Sorted Stack"); stack.Display(); break; case 5: Console.WriteLine("The Top Value of Stack=" + stack.GetTop()); break; case 6: innerChoice = 1; break; default: Console.WriteLine("Wrong Choice"); break; } if (innerChoice == 1) { innerChoice = 0; break; } } break; case 2: Queue queue = new Queue(); while (true) { Console.WriteLine("1. Add"); Console.WriteLine("2. Remove"); Console.WriteLine("3. Display"); Console.WriteLine("4. Sort"); Console.WriteLine("5. Peek"); Console.WriteLine("6. Check Queue is Full"); Console.WriteLine("7. Check Queue is Empty"); Console.WriteLine("8. Exit from Queue"); choice = int.Parse(Console.ReadLine()); switch (choice) { case 1: Console.WriteLine("Enter Element to be Inserted"); queue.Add(int.Parse(Console.ReadLine())); Console.WriteLine("Data Inserted"); break; case 2: Console.WriteLine("Removed " + queue.Remove() + " from the front of the queue"); break; case 3: queue.Display(); break; case 4: queue.Sort(); Console.WriteLine("Sorted Queue"); queue.Display(); break; case 5: Console.WriteLine("The Front Value of Queue=" + queue.Peek()); break; case 6: if (queue.IsFull()) { Console.WriteLine("Queue is full"); } else { Console.WriteLine("Queue is not full"); } break; case 7: if (queue.IsEmpty()) { Console.WriteLine("Queue is empty"); } else { Console.WriteLine("Queue is not empty"); } break; case 8: innerChoice = 1; break; default: Console.WriteLine("Wrong Choice"); break; } if (innerChoice == 1) { innerChoice = 0; break; } } break; case 3: LinkedList linkedList = new LinkedList(); while (true) { Console.WriteLine("1. Add"); Console.WriteLine("2. Remove"); Console.WriteLine("3. Display"); Console.WriteLine("4. Sort"); Console.WriteLine("5. Insert at specific location"); Console.WriteLine("6. Remove from specific location"); Console.WriteLine("7. Exit from Queue"); choice = int.Parse(Console.ReadLine()); switch (choice) { case 1: Console.WriteLine("Enter Element to be Inserted"); linkedList.Add(int.Parse(Console.ReadLine())); Console.WriteLine("Data Inserted"); break; case 2: Console.WriteLine("Removed " + linkedList.Remove() + " from the linked list"); break; case 3: linkedList.Display(); break; case 4: linkedList.Sort(); Console.WriteLine("Sorted Linked List"); linkedList.Display(); break; case 5: Console.WriteLine("Enter Data"); int requestData = int.Parse(Console.ReadLine()); Console.WriteLine("Enter Index"); int index = int.Parse(Console.ReadLine()); linkedList.AddDataAtPosition(requestData, index); Console.WriteLine("Data Inserted"); break; case 6: Console.WriteLine("Enter Index"); int responseData = linkedList.RemoveAtIndex(int.Parse(Console.ReadLine())); Console.WriteLine("Data Removed"); break; case 7: innerChoice = 1; break; default: Console.WriteLine("Wrong Choice"); break; } if (innerChoice == 1) { innerChoice = 0; break; } } break; default: break; } }
static void Main(string[] args) { try { while (true) { Console.WriteLine("\n\n\n--------DATA STRUCTURES MENU--------"); Console.WriteLine("1. Linked List"); Console.WriteLine("2. Stack"); Console.WriteLine("3. Queue"); Console.WriteLine("4. Exit"); Console.WriteLine("\nEnter Your Choice : "); int choice = Convert.ToInt32(Console.ReadLine()); switch (choice) { case 1: { LinkedList myList = new LinkedList(); int flag = 0; while (flag == 0) { Console.WriteLine("\n\n\n------LINKED LIST MENU--------"); Console.WriteLine("1. Add Element"); Console.WriteLine("2. Remove Element"); Console.WriteLine("3. Sort Linked List"); Console.WriteLine("4. Display Linked List"); Console.WriteLine("5. Exit"); Console.WriteLine("\nEnter Your Choice : "); int linkedListOperationChoice = Convert.ToInt32(Console.ReadLine()); switch (linkedListOperationChoice) { case 1: { Console.WriteLine("Enter The Position Where You Want to Insert The Data : "); int position = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Enter the data : "); int data = Convert.ToInt32(Console.ReadLine()); myList.Add(data, position); myList.Display(); break; } case 2: { Console.WriteLine("Enter The Position Of The Data Which You Want To Delete : "); int position = Convert.ToInt32(Console.ReadLine()); int data = myList.Remove(position); myList.Display(); break; } case 3: { myList.Sort(); Console.WriteLine("\nSorted Linked List"); myList.Display(); break; } case 4: { myList.Display(); break; } case 5: { flag = 1; break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } break; } case 2: { Stack myStack = new Stack(); int flag = 0; while (flag == 0) { Console.WriteLine("\n\n\n------STACK MENU------"); Console.WriteLine("1. Push Element"); Console.WriteLine("2. Pop Element"); Console.WriteLine("3. Sort Stack"); Console.WriteLine("4. Get Top Element"); Console.WriteLine("5. Display Stack"); Console.WriteLine("6. Exit"); Console.WriteLine("\nEnter Your Choice : "); int stackOperationChoice = Convert.ToInt32(Console.ReadLine()); switch (stackOperationChoice) { case 1: { Console.WriteLine("Enter the data : "); int data = Convert.ToInt32(Console.ReadLine()); myStack.Add(data); myStack.Display(); break; } case 2: { int data = myStack.Remove(); myStack.Display(); break; } case 3: { myStack.Sort(); Console.WriteLine("\nAfter Sorting"); myStack.Display(); break; } case 4: { int data = myStack.GetElement(); if (data != -1) { Console.WriteLine("TOP ELEMENT IS : {0}", data); } break; } case 5: { myStack.Display(); break; } case 6: { flag = 1; break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } break; } case 3: { Queue myQueue = new Queue(); int flag = 0; while (flag == 0) { Console.WriteLine("\n\n\n------QUEUE MENU------"); Console.WriteLine("1. Enqueue"); Console.WriteLine("2. Dequeue"); Console.WriteLine("3. Sort Queue"); Console.WriteLine("4. Peak"); Console.WriteLine("5. Display Queue"); Console.WriteLine("6. Exit"); Console.WriteLine("\nEnter Your Choice : "); int queueOperationChoice = Convert.ToInt32(Console.ReadLine()); switch (queueOperationChoice) { case 1: { Console.WriteLine("\nEnter the data : "); int data = Convert.ToInt32(Console.ReadLine()); myQueue.Add(data); myQueue.Display(); break; } case 2: { int data = myQueue.Remove(); if (data != -1) { Console.WriteLine("\n{0} IS DELETED.", data); myQueue.Display(); } break; } case 3: { myQueue.Sort(); Console.WriteLine("\nAFTER SORTING:"); myQueue.Display(); break; } case 4: { int data = myQueue.Peak(); if (data != -1) { Console.WriteLine("The First Element Is : {0} ", data); } break; } case 5: { myQueue.Display(); break; } case 6: { flag = 1; break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } break; } case 4: { Environment.Exit(0); break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } } catch (Exception e) { Console.WriteLine("Program Terminated Due To The Following Exception : {0}", e.Message); Console.ReadKey(); } }
static void Main(string[] args) { while (true) { Console.WriteLine("\n\n\n--------DATA STRUCTURES MENU--------"); Console.WriteLine("1. Linked List"); Console.WriteLine("2. Stack"); Console.WriteLine("3. Queue"); Console.WriteLine("4. Exit"); Console.WriteLine("Enter Your Choice : "); int choice = Convert.ToInt32(Console.ReadLine()); switch (choice) { case 1: { LinkedList myList = new LinkedList(); int flag = 0; while (flag == 0) { Console.WriteLine("\n\n\n------LINKED LIST MENU--------"); Console.WriteLine("1. Add Element"); Console.WriteLine("2. Remove Element"); Console.WriteLine("3. Sort Linked List"); Console.WriteLine("4. Display Linked List"); Console.WriteLine("5. Exit"); Console.WriteLine("Enter Your Choice : "); int linkedListOperationChoice = Convert.ToInt32(Console.ReadLine()); switch (linkedListOperationChoice) { case 1: { Console.WriteLine("Enter The Position Where You Want to Insert The Data : "); int position = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Enter the data : "); int data = Convert.ToInt32(Console.ReadLine()); myList.Add(data, position); break; } case 2: { Console.WriteLine("Enter The Position Where You Want to Insert The Data : "); int position = Convert.ToInt32(Console.ReadLine()); int data = myList.Remove(); break; } case 3: { myList.Sort(); Console.WriteLine("Sorted Linked List"); myList.Display(); break; } case 4: { myList.Display(); break; } case 5: { flag = 1; break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } break; } case 2: { Stack myStack = new Stack(); int flag = 0; while (flag == 0) { Console.WriteLine("\n\n\n------STACK MENU------"); Console.WriteLine("1. Push Element"); Console.WriteLine("2. Pop Element"); Console.WriteLine("3. Sort Stack"); Console.WriteLine("4. Display Stack"); Console.WriteLine("5. Exit"); Console.WriteLine("Enter Your Choice : "); int stackOperationChoice = Convert.ToInt32(Console.ReadLine()); switch (stackOperationChoice) { case 1: { Console.WriteLine("Enter the data : "); int data = Convert.ToInt32(Console.ReadLine()); myStack.Add(data); break; } case 2: { int position = Convert.ToInt32(Console.ReadLine()); int data = myStack.Remove(); break; } case 3: { myStack.Sort(); Console.WriteLine("Sorted Stack"); myStack.Display(); break; } case 4: { myStack.Display(); break; } case 5: { flag = 1; break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } break; } case 3: { Queue myQueue = new Queue(); int flag = 0; while (flag == 0) { Console.WriteLine("\n\n\n------QUEUE MENU------"); Console.WriteLine("1. Enqueue"); Console.WriteLine("2. Dequeue"); Console.WriteLine("3. Sort Queue"); Console.WriteLine("4. Display Queue"); Console.WriteLine("5. Exit"); Console.WriteLine("Enter Your Choice : "); int queueOperationChoice = Convert.ToInt32(Console.ReadLine()); switch (queueOperationChoice) { case 1: { Console.WriteLine("Enter the data : "); int data = Convert.ToInt32(Console.ReadLine()); myQueue.Add(data); break; } case 2: { int position = Convert.ToInt32(Console.ReadLine()); int data = myQueue.Remove(); break; } case 3: { myQueue.Sort(); Console.WriteLine("Sorted Stack"); myQueue.Display(); break; } case 4: { myQueue.Display(); break; } case 5: { flag = 1; break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } break; } case 4: { Environment.Exit(0); break; } default: { Console.WriteLine("Invalid Choice Entered"); break; } } } }