プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

データ構造におけるLCFSハッシュ


このセクションでは、LCFSハッシュとは何かを説明します。これはオープンアドレッシング戦略の1つであり、衝突解決戦略を変更します。オープンアドレススキームでのハッシュのアルゴリズムを確認すると、2つの要素が衝突すると、優先度の高い要素がテーブルに挿入され、後続の要素が先に進む必要があることがわかります。したがって、オープンアドレッシングスキームのハッシュはFCFS基準であることがわかります。

LCFS(ラストカムファーストサーブ)スキームを使用。タスクはまったく逆の方法で実行されます。 1つの要素を挿入すると、その要素はx 0の位置に配置されます。 。 y j であるため、その場所がすでに要素yで占められている場合 =x 0 、次にyを位置y j + 1に配置します 、要素zなどを置き換える可能性があります。

PobleteとMunroによると、空のテーブルにn個の要素を挿入した後の予想検索時間は、次の式で制限できます。

$$ E [W] =1 + \ Gamma ^ {-1}(\ alpha n)\ lgroup1 + \ frac {ln \:ln \:\ frac {1} {1 + \ alpha}} {ln \:\ Gamma ^ {-1}(\ alpha n)} + O(\ frac {1} {ln ^ {2} \:\ Gamma ^ {2}(\ alpha n)})\ rgroup $$

ここでΓはガンマ関数であり、

$$ \ Gamma ^ {-1}(\ alpha n)=\ frac {ln \:n} {ln \:ln \:n} \ lgroup1 + \ frac {ln \:ln \:ln \:n} {ln \:ln \:n} + O(\ frac {1} {ln \:ln \:n})\ rgroup $$


  1. データ構造のRツリー

    ここにR-Treesデータ構造が表示されます。 Rツリーは、特別なデータインデックスを効率的に格納するために使用されます。この構造は、特別なデータクエリとストレージを保持するのに非常に役立ちます。このRツリーには実際のアプリケーションがいくつかあります。これらは以下のようなものです- 多次元情報の索引付け ゲームデータの処理 地理空間座標を保持する 仮想マップの実装 Rツリーの一例は以下のようなものです。 対応するRツリーは次のようになります- Rツリーのプロパティ Rツリーは、単一のルート、内部、およびリーフノードで構成されています ル

  2. ハーフエッジデータ構造

    はじめに テンプレートパラメータまたはハーフエッジデータ構造(HalfedgeDSと略記)のHDSは、平面マップ、多面体、またはその他の方向付け可能な2次元など、頂点、エッジ、および面の入射情報を維持できるエッジ中心のデータ構造として定義されます。ランダムな次元に埋め込まれたサーフェス。各エッジは、反対方向の2つのハーフエッジに分割されます。各ハーフエッジには、1つの入射面と1つの入射頂点が格納されます。各面と各頂点に1つの入射ハーフエッジが格納されます。ハーフエッジデータ構造のバリエーションを減らすと、面のハーフエッジポインタや面の保存など、この情報の一部を削除できます。 ハーフエッジデ