As an example of the binary heap, implemented using the Hippie library, the heap sort algorithm is presented and described below. The C#-based implementation, which should be added to the Main method in the Program class, is as follows:
List<int> unsorted = new List<int>() { 50, 33, 78, -23, 90, 41 }; MultiHeap<int> heap = HeapFactory.NewBinaryHeap<int>(); unsorted.ForEach(i => heap.Add(i)); Console.WriteLine("Unsorted: " + string.Join(", ", unsorted)); List<int> sorted = new List<int>(heap.Count); while (heap.Count > 0) { sorted.Add(heap.RemoveMin()); } Console.WriteLine("Sorted: " + string.Join(", ", sorted));
As you can see, the implementation is very simple and short. At the beginning, you create a list with unsorted ...