本日の格言(俺用の)
冗長性のない、つまり同じ値がダブって入っているということのない、要素の集合を作りたいんなら、冗長なvectorを作ってから、sortして、erase, unique で冗長性を取り除くべし。一度setに詰めてからvectorに戻すなんてことするとメチャメチャ遅いぞ。やってらんないくらい遅いぞ。もったいないぞ。std::setは検索をしたい時のみに、あくまで検索目的で使うものだぞ。
template< class CONT > void pocRemoveRedundancy( CONT& cont ) { // コンテナの冗長性を取り除く関数テンプレート sort( cont.begin(), cont.end() ); cont.erase( unique( cont.begin(), cont.end() ), cont.end() ); return; }
![Effective STL―STLを効果的に使いこなす50の鉄則 Effective STL―STLを効果的に使いこなす50の鉄則](https://images-fe.ssl-images-amazon.com/images/I/41W5R878R7L._SL160_.jpg)
Effective STL―STLを効果的に使いこなす50の鉄則
- 作者: スコットメイヤーズ,Scott Meyers,細谷昭
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2002/01
- メディア: 単行本
- 購入: 9人 クリック: 155回
- この商品を含むブログ (95件) を見る