質問のタイトルは十分に明確だと思います。C++でstd::listをstable_sort()することは可能ですか?または、それをstd :: vectorに変換する必要がありますか?
簡単な例を試しましたが、リンクリストにはないRandomAccessIteratorsが必要なようです。では、どうすればstd :: list()を安定ソートできますか?
編集:私にエラーを与えるサンプルコード:
#include <list>
#include <algorithm>
// ...
list<int> the_list;
stable_sort(the_list.begin(), the_list.end());
g ++では約30行のエラー(貼り付けるには長すぎます)が表示され、そのうちのいくつかはRandomAccessIterators(および_merge_sort_loopと呼ばれるもの)を参照しています。リンクリストのマージソートの実装を見たことがあり、それらはほとんど「シーケンシャル」であるため、少し奇妙です。