How The Priority Queue Data Structure