- ベストアンサー
C言語のライブラリ
こんにちは。 フリーのC言語のライブラリを紹介してください。 ファイル同士のマッチングやら、あるレコードの検索などC言語で 開発することになりました。 大量のデータで行なうため、なるたけ早いロジックを組まないといけません。 検索方法については、よく情報処理試験等で出てくる2分探索とか ハッシュ法などを使用したいと思うのですが。 いちから作成するのは大変なので、市販で出回っているライブラリなど ありましたらご紹介していただけないでしょうか? できたら、フリーソフトがいいのですが(安価であれば購入も考えています)、どなかたか知り得ているかたよろしくお願いします。 環境はUNIXなのですが、Windows版でもかまいません。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
UNIXってことはGCCですか? ハッシュ検索も2分探索もGCCのライブラリに標準で含まれます。 2分検索;bsearch ハッシュ:hsearsh,hcreate,hdestroy 使い方はmanで調べてください。
その他の回答 (2)
前記回答がリンクされ損ねていたので 下のURLから 左上の [解説(良本紹介など)]→”アルゴリズムとデータ構造” で、また左上の [アルゴリズムとデータ構造書籍一覧 目次へ] から
- 参考URL:
- http://www.yfcbookshelf.com/
本屋の本を1冊持っとくと便利じゃないかと。 「C言語による最新アルゴリズム事典」 技術評論社 奥村 晴彦 著 「C言語で書くアルゴリズム」 ソフトバンクパブリッシング Andrew Binstock/John Rex 著 岩谷 宏 訳 とか、いろいろあるみたいです。 詳しくは参考URLを。 WEB上で直接ソースを探すなら、 [YAHOO>コンピュータとインターネット > ソフト ウェア > プログラミングツール > プログラミング言 語 > CとC++] 下で 「The Collection Of Algorithms」 や 「C言語によるアルゴリズム(コメント付き)」(この まんまのキーワードでYAHOO検索) なんてのもありました (誰かの保管サイトらしいので、ほどほどのところに。 txtがもし見れなければ保存してからブラウザに放り 込めばOK) など『2分探索 C』あたりで検索かけたりすると いくつかあるみたいです。 フリーウェア...ではあるかどうか知りませんが、 サンプルを探して使う程度で良いんじゃないでしょうか。
お礼
どうもありがとうございました
お礼
ライブラリにあるなんて知りませんでした。 どうもありがとうございます。 専門的な方だと思われますので、もうひとつお願いします。m(__)m テーブルサイズを小さくすると、既存のレコードが上書き(なくなる)のような 動きを見せます。テーブルを大きくすればいいんでしょうが、若干ハッシュテーブルの仕様がわからないのが心配です。 そのあたりの仕様がmanでみると hsearch() is a hash-table search routine generalized from Knuth (6.4) Algorithm D. とあります。 Knuth (6.4) Algorithm D.ってどこに出てるかご存知ですか?