priority queue vs set
A priority queue only gives you access to one element in sorted order --
i.e., you can get the highest priority item, and when you remove that,
you can get the next highest priority, and so on.
A priority queue also allows duplicate elements, so it's more like a
multiset than a set.
A set allows you full access in sorted order, so you can, for example,
find two elements somewhere in the middle of the set, then traverse in
order from one to the other.