要求兩個(gè)數(shù)的和,可以使用以下代碼實(shí)現(xiàn):
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"兩數(shù)的索引為: {result}")
else:
print("沒(méi)有找到符合條件的兩個(gè)數(shù)")
在這段代碼中,two_sum
函數(shù)接受一個(gè)包含整數(shù)的列表 nums
和一個(gè)目標(biāo)值 target
作為參數(shù)。函數(shù)通過(guò)遍歷 nums
列表并將元素的值和索引存儲(chǔ)在哈希表 hash_map
中,然后計(jì)算每個(gè)元素與目標(biāo)值的差值 complement
,檢查是否存在該差值在 hash_map
中,如果存在則返回兩個(gè)數(shù)的索引。如果遍歷結(jié)束后沒(méi)有找到符合條件的兩個(gè)數(shù),則返回 None
。