Updated with Heap and Priority Queue Material