MyPriorityQueue (to be completeted)