題意:一個(gè)數(shù)組中兩個(gè)位置上的數(shù)的和恰為目標(biāo),求這兩個(gè)位置。
示例:[1,3,7,8,15] , 15 則位置為3,4
實(shí)現(xiàn)效果:函數(shù)參數(shù) array target 返回值 (firindex,endindex)
思路方式:一個(gè)字典 存儲target - value的值,然后返回索引值
# 使用字典方式解決 復(fù)雜度nlogn
# 返回元組 (firindex,lasindex)
def add_twonumbers(num,target):
dicmap = {}
for index ,value in enumerate( num ) :
if target - value in dicmap :
return dicmap[target-value] + 1,index + 1
dicmap[value] = index
print(add_twonumbers([1,2,3,4],4))