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