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

Javascriptを使用してハッシュテーブルに要素を追加します


ハッシュテーブルに要素を追加する場合、最も重要な部分は衝突の解決です。同じようにチェーンを使用します。ここで読むことができる他のアルゴリズムがあります:https://en.wikipedia.org/wiki/Hash_table#Collision_resolution

それでは、実装を見てみましょう。これを単純にするためにのみ整数で機能するハッシュ関数を作成します。ただし、より複雑なアルゴリズムを使用して、すべてのオブジェクトをハッシュすることができます-

put(key, value) {
   let hashCode = hash(key);

   for(let i = 0; i < this.container[hashCode].length; i ++) {

      // Replace the existing value with the given key
      // if it already exists
      if(this.container[hashCode][i].key === key) {
         this.container[hashCode][i].value = value; return;
      }
   }

   // Push the pair at the end of the array
   this.container[hashCode].push(new this.KVPair(key, value));
}

を使用してこれをテストできます

let ht = new HashTable();
ht.put(10, 94); ht.put(20, 72);
ht.put(30, 1);
 ht.put(21, 6);
ht.put(15, 21);
ht.put(32, 34);
 ht.display();

出力

これにより、出力が得られます-

0:
1:
2:
3:
4: { 15: 21 }
5:
6:
7:
8: { 30: 1 }
9: { 20: 72 }
10: { 10: 94 } -->{ 21: 6 } -->{ 32: 34 }

  1. Javascriptのハッシュテーブルデータ構造

    ハッシュテーブルは、データを関連付けて格納するデータ構造です。ハッシュテーブルでは、データは配列形式で格納され、各データ値には独自のインデックス値があります。目的のデータのインデックスがわかっている場合、データへのアクセスは非常に高速になります。 したがって、データのサイズに関係なく、挿入および検索操作が非常に高速なデータ構造になります。ハッシュテーブルは、ストレージメディアとして配列を使用し、ハッシュ手法を使用して、要素が挿入される場所または要素が配置される場所のインデックスを生成します。 ハッシュ ハッシュは、キー値の範囲を配列のインデックスの範囲に変換する手法です。モジュロ演算子を使用

  2. JavaScriptのインポートで「{}」を使用しますか?

    以下は、javaScriptインポートで{}を使用するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>