Heap Generic Pointer-based Binary Heaps in c# Max and Min heap implementation Defaults to minheap Heap<T> heap = new Heap<T>(); //minheap Heap<T> heap = new Heap<T>(true); //maxheap your object must implement the IComparable interface