python兩數(shù)之和怎么求

小億
109
2024-04-11 14:36:03

要求兩個(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。

0