Priority Queue Operations
Insert(S, x) inserts the element x into set S
Maximum(S) returns the element of S with the maximum key
ExtractMax(S) removes and returns the element of S with the maximum key
How could we implement these operations using a heap?