mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-10-31 18:37:48 +08:00 
			
		
		
		
	Update Q&A of hash_table and time_complexity Chapter (#1760)
* Update summary.md @Richard-Zhao93 的回答非常好,同时觉得"如果在开头能了解到这部分s,对初学者来说,可能更容易接受这些陌生的概念。"的建议很有道理 * Update QA of time_complexity * Enhance explanation of hash tables vs arrays Clarify the advantages of hash tables over arrays for key-value mapping. * Update summary.md --------- Co-authored-by: Yudong Jin <krahets@163.com>
This commit is contained in:
		| @ -45,3 +45,7 @@ | ||||
| **Q**:为什么哈希表扩容能够缓解哈希冲突? | ||||
|  | ||||
| 哈希函数的最后一步往往是对数组长度 $n$ 取模(取余),让输出值落在数组索引范围内;在扩容后,数组长度 $n$ 发生变化,而 `key` 对应的索引也可能发生变化。原先落在同一个桶的多个 `key` ,在扩容后可能会被分配到多个桶中,从而实现哈希冲突的缓解。 | ||||
|  | ||||
| **Q**:如果为了高效的存取,那么直接使用数组不就好了吗? | ||||
|  | ||||
| 当数据的 `key` 是连续的小范围整数时,直接用数组即可,简单高效。但当 `key` 是其他类型(例如字符串)时,就需要借助哈希函数将 `key` 映射为数组索引,再通过桶数组存储元素,这样的结构就是哈希表。 | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Siz Long
					Siz Long