9

Delphi 5 の優れた無料の Hashtable 実装を知っていますか?

Hastable で大量のデータを整理する必要があり、Web で利用可能なほとんどの実装で見つかったメモリ リークの問題が少し心配です。

Tks

4

8 に答える 8

10

また、オープンソース/以前は商用のTurboPower SysToolsも確認できます。どれくらい更新されているかわかりません。ある時点で、Julian Bucknall は彼のEZDSL ライブラリよりもそれを推奨しましたが、それは彼がまだ TurboPower で働いていて、それが維持/更新されていたときのことです。

于 2008-10-07T19:09:34.307 に答える
3

私のGpStringHashを試すことができます。メモリ リークがないことを保証しますが、文字列でのみ機能します。D5でも動くと思います。

于 2008-10-07T16:55:05.733 に答える
3

EZDSL はハッシュ テーブルを含むデータ構造のライブラリで、TurboPower と DevExpress の Julian Bucknall によって書かれました... 私はそれらを使用したことはありませんが、この人のコードには大きな期待を寄せています。

http://www.boyet.com/FixedArticles/EZDSL.html

于 2008-10-07T16:32:31.613 に答える
1

Kodersで検索してみてください。
ここに、単純な実装 ( Winjab プロジェクト)、またはJCLからのthisがあります。

注: コードを使用する前に、コードのライセンスを参照してください。

于 2008-10-07T16:06:30.870 に答える
0

チェックアウトDeCAL。ハッシュテーブルとその他のデータ構造が含まれています。

于 2008-10-24T13:08:56.857 に答える
0

実際のハッシュテーブルの実装とは別に、使用されているハッシュ関数自体も重要です。

良いものは、Bob Jenkins のハッシュ関数です。彼の論文はこちら で読むことができます

このアルゴリズムは、入力が DWord サイズの場合に最近改善されました ( C バージョンはこちらを参照してください)。このバージョンは高速で、1 つではなく 2 つの 32 ビット ハッシュ値になります。(この 2 番目のハッシュ値は、たとえば、バケット内の選択を高速化するために使用できます。)

興味のある方は、Delphi の翻訳をここに貼り付けていただけますか? (約 170 行のコードです。)

于 2008-11-10T16:07:01.143 に答える
0

Peter Below は、Embarcadero の新しいグループに対して行ったことのリワークを public.attachments に投稿しました。CodeGear サイト ( http://cc.codegear.com/Item/24825 ) の彼のプロフィールの下に、それを説明する何かがあります。

于 2008-10-08T22:52:33.030 に答える