constructor(initialItems) {
    super((a, b) => (this.priority(a) < this.priority(b) ? -1 : 1));

    this._priority = {};

    initialItems = initialItems || {};
    Object.keys(initialItems).forEach(item => {
      this.insert(item, initialItems[item]);
    });
  }
Extends the MinHeap with the only difference that
the heap operations are performed based on the priority of the element
and not on the element itself