This is a generic heap data structure for Java. You can use it with every object implementing Comparable interface.
In this heap, the root of the tree is always the object with maximum node. If you need to print the tree, toString() method has been overwritten, and the tree will be printed using BFS manner.
insert() peek() poll() isEmpty() remove() remove all()