タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

algorithmとc++に関するagxのブックマーク (3)

  • Spaghetti Source - 各種アルゴリズムの C++ による実装

    ACM/ICPC(プログラミングコンテスト)系列の問題を解くことを目標にして,各種アルゴリズムを C++ で実装してみた.極めて意地が悪い類の問題には対応していないし,特定の入力に対して高速に動くということもない.計算量も最良とは限らない. これらを参考にする方への注意とお願い: これらの記述は正確とは限りません.参考文献を参照することを強く推奨します.間違っている場合は是非教えてください. これらのプログラムは間違っているかもしれません.各人で検証することを強く推奨します.バグがあれば是非教えてください. 分類が怪しいので,これはこっちだろう,ということがあればコメントを下さると助かります. 注意! 現在書き換え中 TODO 分類を正しく行う. 全体的に説明と使い方を詳しく. Verify していないものを Verify. ボロノイ図(いつになることやら……) 基 テンプレート グラフ

    agx
    agx 2006/12/16
    グラフ 平面幾何 空間幾何 データ構造 文字列 数理 典型動的計画法
  • 株式会社エス・スリー・フォー » STLport のハッシュ・コンテナ

    STLport のハッシュ・コンテナ 標準C++ライブラリが提供するコンテナは、vector, list, deque, set, multiset, map, multimap の7種です。 これらコンテナから特定の要素を検索するとき、その時間計算量は vector, list, deque では O(N), set, multiset, map, multimap では O(logN) となります。 これ以上に高速な検索が可能なコンテナとしてハッシュ表(hashtable)を利用すれば、適切なハッシュ関数を与えることによって検索に要する時間計算量をコンテナ内の要素数に関わらず O(1) に近づけることができますが、残念ながら標準C++ライブラリにはハッシュ表で実装されたコンテナ(ハッシュ・コンテナ)を提供していません。 SGI(Silicon Graphics社)のSTL実装をベースに

    agx
    agx 2006/12/13
    hash は速いわけではないらしい
  • ハードウェア乱数生成ルーチンhdrand.c

    ハードウェア乱数生成ルーチンhdrand.c  by とつげき東北  トップページに戻る 「ランダムな乱数」「良質な乱数」を得る 導入: プログラミングをしていて、「真にランダムな乱数」を得ようとしたときに困ることがある。 どんなに優れた決定論的擬似乱数ルーチンも、真にランダムな乱数を作ってはくれない。 結果としてtime値などを乱数の種にすることになるわけだ。 ゲームなどならその程度でも充分だが、セキュリティの重要なソフトではそうはいかず、ユーザのマウス入力のタイミングなどを読み取る必要が出てくる。 そこでCPUがPentium以降・Windows下でハードディスクが使用されている環境で、ユーザに不可解な入力作業をさせることなく、良い性質の乱数を得るためのルーチンを作っておく。 方法: テンポラリファイルフォルダにファイルを作成・削除し、その処理にかかった時間を高分解能

  • 1