>>836
キー(std::size_t)だけの配列をソートして、その結果を本来の対象物の並び替えに使ったほうがよくない?