diff --git a/lectures/23_priority_queues_II/README.md b/lectures/23_priority_queues_II/README.md index 35bdb3e..1fca33d 100644 --- a/lectures/23_priority_queues_II/README.md +++ b/lectures/23_priority_queues_II/README.md @@ -123,4 +123,4 @@ organized heap data, but incur a O(n log n) cost. Why? ## 23.10 Leetcode Exercises - [Leetcode problem 912: Sort an Array](https://leetcode.com/problems/sort-an-array/). Solution: [p912_heapsort_array.cpp](../../leetcode/p912_heapsort_array.cpp). -Solution2: [p912_heapsort_array_heapify.cpp](../../leetcode/p912_heapsort_array_heapify.cpp). +Solution 2: [p912_heapsort_array_heapify.cpp](../../leetcode/p912_heapsort_array_heapify.cpp). Solution 3 - min heap: [p912_heapsort_array_min_heap.cpp](p912_heapsort_array_min_heap.cpp). diff --git a/leetcode/p912_heapsort_array_min_heap.cpp b/leetcode/p912_heapsort_array_min_heap.cpp new file mode 100644 index 0000000..4ede302 --- /dev/null +++ b/leetcode/p912_heapsort_array_min_heap.cpp @@ -0,0 +1,19 @@ +class Solution { +public: + vector sortArray(vector& nums) { + vector result; + priority_queue, std::greater> pq; + int size = nums.size(); + // build the priority queue, which is now a min heap + for(int i=0;i