プライオリティ キューが必要です。フレームワークでは、CHMutableArrayHeap と CHBinaryHeap で十分ですよね。
ただし、同じ優先度のオブジェクトをキューに送信すると、CHMutableArrayHeap と CHBinaryHeap の両方が追加順序を維持できなくなります。
たとえば、obj1 から obj10 までのオブジェクトがあり、それらの優先度は同じです。これらの 10 個のオブジェクトを 1 から 10 まで 1 つずつキューに追加した後、それらの位置は追加順序と同じではなく、obj4 が obj1 の前に来る場合があります。
では、クイン、優先度が同じ場合に追加順序を維持する優先キューが必要な場合はどうすればよいですか?
ありがとう