研究でC++でソフトウェアの開発を行っていますが データ量が少ない場合は速度はあまり、気にしなくていいのですが、 データ量が増えてくると、計算量などを意識して、高速化をする必要性を感じてきました。 自分は実装でSTLのmapやmultimapを使っているのですが、mapの検索の計算量がO(log n),multimapの計算量がO(nlogn)なのでここで、時間を食っているのだと考えられます。 そのため、この部分の計算量を減らす方法を検討しました。 まず、STLのmapの計算量がlog(n)なのは、実装に二分木が用いられるためです。そのため、このmapの実装をhashで行ったら高速化されるのではないかと考えました。 詳しい説明は以下 BoostでC++0xのライブラリ「TR1」を先取りしよう (5) (1/2):CodeZine(コードジン) そこで、調べていくと、boostで計算量がO(