要求兩個數的和,可以使用以下代碼實現:
def two_sum(nums, target):
hash_map = {}
for i, num in enumerate(nums):
complement = target - num
if complement in hash_map:
return [hash_map[complement], i]
hash_map[num] = i
return None
nums = [2, 7, 11, 15]
target = 9
result = two_sum(nums, target)
if result:
print(f"兩數的索引為: {result}")
else:
print("沒有找到符合條件的兩個數")
在這段代碼中,two_sum
函數接受一個包含整數的列表 nums
和一個目標值 target
作為參數。函數通過遍歷 nums
列表并將元素的值和索引存儲在哈希表 hash_map
中,然后計算每個元素與目標值的差值 complement
,檢查是否存在該差值在 hash_map
中,如果存在則返回兩個數的索引。如果遍歷結束后沒有找到符合條件的兩個數,則返回 None
。