mirror of
https://github.com/krahets/hello-algo.git
synced 2026-11-03 14:15:40 +08:00
deploy
This commit is contained in:
@@ -4712,7 +4712,7 @@
|
||||
<p><strong>Распределение пар ключ-значение определяется хеш-функцией</strong>. Вспомним этапы вычисления хеш-функции: сначала вычисляется хеш-значение, затем оно берется по модулю длины массива:</p>
|
||||
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="nv">index</span><span class="w"> </span><span class="o">=</span><span class="w"> </span>hash<span class="o">(</span>key<span class="o">)</span><span class="w"> </span>%<span class="w"> </span>capacity
|
||||
</code></pre></div>
|
||||
<p>Из этой формулы видно: при фиксированной емкости хеш-таблицы <code>capacity</code> **выходное значение определяет именно хеш-алгоритм <code>hash()</code> **, а значит, именно он определяет распределение пар ключ-значение в хеш-таблице.</p>
|
||||
<p>Из этой формулы видно: при фиксированной емкости хеш-таблицы <code>capacity</code> <strong>выходное значение определяет именно хеш-алгоритм <code>hash()</code></strong>, а значит, именно он определяет распределение пар ключ-значение в хеш-таблице.</p>
|
||||
<p>Это означает, что для уменьшения вероятности хеш-коллизий нам следует сосредоточиться на проектировании хеш-алгоритма <code>hash()</code> .</p>
|
||||
<h2 id="631-">6.3.1 Цели хеш-алгоритма<a class="headerlink" href="#631-" title="Permanent link">¶</a></h2>
|
||||
<p>Чтобы получить структуру данных хеш-таблицы, которая будет одновременно быстрой и надежной, хеш-алгоритм должен обладать следующими свойствами.</p>
|
||||
|
||||
Reference in New Issue
Block a user