次のディクショナリは、宛先都市 ID のキーと値のペアと、その都市に関連付けられているフィルターの数を表しています。
Dictionary<int, int> totalCityFilters
このディクショナリは、フィルタ数の降順でソートされており、これが必要な方法です。次に、ソートされていないフライトのリストがあります。
List<Flight> unsortedFlights
各Flight
オブジェクトには、私の問題に最も関連するプロパティがたくさんありDestinationID
ますFinalPrice
。次の 2 つの前提に基づいて並べ替えられたフライトの新しいリストを作成する必要があります。
- リストは最初に の順序に基づいてソートする必要があります。
totalCityFilters
その辞書のキーは プロパティ と一致しますDestinationID
。フライト リストには、同じフライトが複数含まれる場合がありますDestinationID
(これは主キーではありません)。 - 次に、リストを
FinalPrice
プロパティで (昇順で) 並べ替える必要があります。
ただし、2 番目の並べ替えが最初の並べ替えを破棄してはなりません。つまり、より安いフライト (A) がより高価なフライト (B) の上にB.DestinationID
表示されてはなりません。A.DestinationID
totalCityFilters