public void MergeListTest(SingleLinkedList list) { //SingleLinkedList list1 = new SingleLinkedList(); SingleLinkedList list2 = new SingleLinkedList(); //list1.CreateList(); list2.CreateList(); list.BubbleSortExData(); //list1.BubbleSortExData(); list2.BubbleSortExData(); Console.WriteLine("First List - "); list.DisplayList(); Console.WriteLine("Second List - "); list2.DisplayList(); SingleLinkedList list3; list3 = list.Merge1(list2); Console.WriteLine("MergedListByData - "); list3.DisplayList(); Console.WriteLine("First List - "); list.DisplayList(); Console.WriteLine("Second List - "); list2.DisplayList(); list3 = list.Merge2(list2); Console.WriteLine("MergedListByLinks - "); list3.DisplayList(); }
public void MergeList(SingleLinkedList list1) { SingleLinkedList list2 = new SingleLinkedList(); list2.CreateList(); list1.BubbleSortExData(); list2.BubbleSortExData(); Console.WriteLine("Prva lista .... "); list1.DisplayList(); Console.WriteLine("Druga lista ...."); list2.DisplayList(); SingleLinkedList list3; list3 = list1.Merge1(list2); Console.WriteLine("Spojena lista...."); list3.DisplayList(); }
private static void MergeSortedLinkList() { SingleLinkedList list1 = new SingleLinkedList(); SingleLinkedList list2 = new SingleLinkedList(); list1.CreateList(); list2.CreateList(); list1.BubbleSortExData(); list2.BubbleSortExData(); Console.WriteLine("First List-"); list1.DisplayList(); Console.WriteLine("Second List-"); list2.DisplayList(); SingleLinkedList list3; //Merging by creating a new list list3 = list1.Merge1(list2); Console.WriteLine("Merged List-"); list3.DisplayList(); //To showcase that the original lists do not change. Console.WriteLine("First List-"); list1.DisplayList(); Console.WriteLine("Second List-"); list2.DisplayList(); //Merging by rearranging links list3 = list1.Merge2(list2); Console.WriteLine("Merged List-"); list3.DisplayList(); //To showcase that the original lists change. Console.WriteLine("First List-"); list1.DisplayList(); Console.WriteLine("Second List-"); list2.DisplayList(); }
static void Main(string[] args) { int choice, data, k, x; SingleLinkedList list = new SingleLinkedList(); list.CreatList(); while (true) { Console.WriteLine(); Console.WriteLine("1.Display List"); Console.WriteLine("2.Count the number of nodes"); Console.WriteLine("3.Search for an element"); Console.WriteLine("4.Insert in empty list/Insert in beginning of the list"); Console.WriteLine("5.Insert a node at the end of the list"); Console.WriteLine("6.Insert a node after a specific node"); Console.WriteLine("7.Insert a node before a specific node"); Console.WriteLine("8.Insert a node at a given position"); Console.WriteLine("9.Delete first node"); Console.WriteLine("10.Delete last node"); Console.WriteLine("11.Delete any node"); Console.WriteLine("12.Reverse the list"); Console.WriteLine("13.Bubble sort by exchanging data"); Console.WriteLine("14.Bubble sort by exchanging links"); Console.WriteLine("15.MergeSort"); Console.WriteLine("16.Insert Cycle"); Console.WriteLine("17.Detect Cycle"); Console.WriteLine("18.Remove Cycle"); Console.WriteLine("19.Quit"); Console.WriteLine("Enter your choice : "); choice = Convert.ToInt32(Console.ReadLine()); if (choice == 19) { break; } switch (choice) { case 1: list.DisplayList(); break; case 2: list.CountNodes(); break; case 3: Console.WriteLine("Enter the element to be searched :"); data = Convert.ToInt32(Console.ReadLine()); list.Search(data); break; case 4: Console.WriteLine("Enter the element to be inserted"); data = Convert.ToInt32(Console.ReadLine()); list.InsertInBeginning(data); break; case 5: Console.WriteLine("Enter the element to be inserted"); data = Convert.ToInt32(Console.ReadLine()); list.InsertAtEnd(data); break; case 6: Console.WriteLine("Enter the element to be inserted"); data = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Enter the value of the specific node"); x = Convert.ToInt32(Console.ReadLine()); list.InsertAfter(data, x); break; case 7: Console.WriteLine("Enter the element to be inserted"); data = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Enter the value of the specific node"); x = Convert.ToInt32(Console.ReadLine()); list.InsertBefore(data, x); break; case 8: Console.WriteLine("Enter the element to be inserted"); data = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Enter the position"); k = Convert.ToInt32(Console.ReadLine()); list.InsertAtPosition(data, k); break; case 9: list.DeleteFirstNode(); break; case 10: list.DeleteLastNode(); break; case 11: Console.WriteLine("Enter the element to be deleted"); data = Convert.ToInt32(Console.ReadLine()); list.DeleteNode(data); break; case 12: list.ReverseList(); break; case 13: list.BubbleSortExData(); break; case 14: list.BubbleSortExLinks(); break; case 15: list.Merge1(); break; case 19: break; } } }