重複ファイルを検出するには?


うみっこ  2006-11-14 22:31:09  No: 63578  IP: [192.*.*.*]

指定フォルダ配下(サブフォルダ含み)から重複ファイルを検出し、リスト表示するプログラムを書こうとしています。どうしてもべたで時間のかかるロジックしか(1ファイルずつ比較)浮かびません。
簡単なロジックと使用する関数名を教えて頂けますと幸いです。

編集    削除
επιστημη  2006-11-14 22:37:32  No: 63579  IP: [192.*.*.*]

「重複ファイル」ってなんですか?

編集    削除
うみっこ  2006-11-14 22:48:49  No: 63580  IP: [192.*.*.*]

説明不足で失礼しました。重複ファイルとは同じ名前のファイルを指して言っています。指定フォルダ配下の別サブフォルダに同名ファイルがあればその2ファイルをリストに出力するイメージです。

編集    削除
επιστημη  2006-11-14 22:59:13  No: 63581  IP: [192.*.*.*]

要するに文字列を高速に検索したいってことですよね?
ハッシュ表あるいは二進木による集合にぶっこめばいいんじゃないすか?

編集    削除
うみっこ  2006-11-14 23:10:45  No: 63582  IP: [192.*.*.*]

なるほど、今さっとネットでハッシュと二進木について調べて見ましたがデータの検索を高速化するための手法のようです。もう少し勉強してみます。ありがとうございます。

編集    削除