私はのベクトルを持っています
struct Data {
size_t iLo;
size_t iHi;
};
iLoと の値を個別に並べ替えたいiHi。つまり、iLoメンバーを並べ替えても、'iHi' メンバーは変更されません。iLos は昇順にソートされ、iHis は降順にソートされます。例えば:
{{1, 3}, {4, 66}, {0, 0}, {0, 1}};
iLosを昇順で最初にソートすると、
{{0, 3}, {0, 66}, {1, 0}, {4, 1}};
iHi次に、 s の降順でソートすると、次のようになります。
{{0, 66}, {0, 3}, {1, 1}, {4, 0}};
これを行う理由は、膨大な量のデータを扱っており、元の配列データを 2 つの新しい配列データに分割するのに十分な RAM がない可能性があるためです。まずは現地で試してみたい。
Boost を使用できず、c++03 までしか使用できません。