python给定一个整数数组和一个目标值,找出数组之和为目标值的两个数,打印出下标
时间: 2023-08-14 22:10:27 浏览: 151
求一个数组的两个最小数,并返回下标
可以使用哈希表来解决这个问题,首先遍历一遍数组,将每个数与其下标存入哈希表中。然后再遍历一遍数组,对于每个数,计算目标值与该数的差值,然后在哈希表中查找该差值是否存在,如果存在,则说明找到了一对符合要求的数。
下面是一个示例代码:
```python
def two_sum(nums, target):
hash_table = {}
for i, num in enumerate(nums):
hash_table[num] = i
for i, num in enumerate(nums):
complement = target - num
if complement in hash_table and hash_table[complement] != i:
return i, hash_table[complement]
return None
```
其中,enumerate() 函数可以同时返回元素值和下标。如果找到了一对符合要求的数,则返回它们的下标,否则返回 None。
阅读全文