public void AddNum(int num) { smallerElemenMaxHeap.Add(num); largerElementMinHeap.Add(smallerElemenMaxHeap.PopMax()); if (smallerElemenMaxHeap.GetSize() < largerElementMinHeap.GetSize()) { smallerElemenMaxHeap.Add(largerElementMinHeap.PopMin()); } }
public KthLargest(int k, T[] arr) { Heap = new MinHeap <T>(); for (int i = 0; i < arr.Length; i++) { Heap.Add(arr[i]); } KthIndex = k; ObjArray = arr; }