C ++標準ライブラリには二重にリンクされたリストしかありません(ただし、単一にリンクされたリストはありません)。単一リンクリストを持つ広く使用されているC++ライブラリはありますか?
質問する
4327 次
3 に答える
8
slist
単一リンクリストの実装であるBoostのクラスがあります。
于 2010-05-10T02:53:41.400 に答える
5
参考までに...
時が経ち、C ++ 11により、単一リンクリストとして実装され、Cでの実装と比較して本質的にオーバーヘッドがないstd::forward_listコンテナがもたらされました。
このコンテナと比較するとstd::list
、双方向の反復が不要な場合に、よりスペース効率の高いストレージが提供されます。
警告:push_back
メソッドがありません(std::forward_listおよびstd::forward_list :: push_back)
于 2014-03-15T15:27:44.857 に答える
3
SGI拡張機能であるslistがあります( __gnu_cxx::slist
)
#include <iostream>
#include <iterator>
#include <ext/slist>
int main(int argc, char** argv) {
__gnu_cxx::slist<int> sl;
sl.push_front(1);
sl.push_front(2);
sl.push_front(0);
std::copy(sl.begin(), sl.end(), // The output is 0 2 1
std::ostream_iterator<int>(std::cout, " "));
std::cout << std::endl;
return 0;
}
于 2010-05-10T02:52:34.910 に答える