生成一段运用哈希表求两数之和的python代码
时间: 2024-02-04 09:03:34 浏览: 88
好的,以下是一个简单的Python代码,用哈希表求解两数之和问题:
```python
def twoSum(nums, target):
# 定义一个哈希表
hash_table = {}
# 遍历数组
for i in range(len(nums)):
# 计算目标值与当前值的差值
complement = target - nums[i]
# 判断差值是否在哈希表中
if complement in hash_table:
# 如果在哈希表中,返回差值的下标和当前值的下标
return [hash_table[complement], i]
# 如果不在哈希表中,将当前值存入哈希表中
hash_table[nums[i]] = i
# 如果没有找到,返回空列表
return []
```
这段代码使用了一个哈希表来记录数组中每个数的下标,然后遍历数组,对于每个数,计算目标值与当前值的差值,判断差值是否在哈希表中,如果在哈希表中,就返回差值的下标和当前值的下标,否则就将当前值存入哈希表中。时间复杂度为 O(n),空间复杂度为 O(n)。
阅读全文