トライは、データのセグメントを 1 つのベクトルに分散することによって、スパース配列を表すことができます。
トライは、2 つの読み取りを使用して、テーブルに要素が存在するかどうかを判断できます。要素が格納されている有効な位置を取得するため、または要素が基になるストアに存在しないかどうかを知るための配列インデックスのみです。
また、Tries は、スパースされた要素のデフォルト値に対してバッキング ストア内のデフォルトの位置を提供します。 Trie は、考えられるすべてのソース インデックスが少なくともバッキング ストア (頻繁にゼロまたは空の文字列を格納する場所) のデフォルトの位置にマップされることを保証するため、返されたインデックスに対するテストは必要ありません。
トライは複雑なハッシュ関数を必要とせず、読み取りの衝突を処理する必要がないため、ハッシュマップよりもはるかに高速です。さらに、Java ハッシュマップはオブジェクトに対してのみインデックスを付けることができ、ハッシュされたソース インデックスごとに Integer オブジェクトを作成すると、ガベージ コレクターに負荷がかかるため、メモリ操作にコストがかかります。
以上がTry を使用してスパース配列を効率的に表現するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。