1. 題目
給定一個
整數陣列nums和一個整數目標值target,請你在該陣列中找出和為目標值的那兩個整數,并回傳它們的陣列下標,
示例1:
輸入: nums = [2,7,11,15],target = 9
輸出: [0,1]
解釋: 因為nums[0] + nums[1] == 9,回傳[0,1],
示例2:
輸入: nums = [3,2,4],target = 6
輸出: [1,2]
解釋: 因為nums[1] + nums[2] == 6,回傳[1,2],
提示:

2. 思路
2.1 暴力破解法
看到這道題,首先想到的就是暴力破解法,通過兩個
for回圈去遍歷陣列nums找到兩個數相加等于目標值target的相對的下標,實作代碼如下:
結果:在這里可以看到暴力破解法不僅耗時長,而且記憶體消耗也很大,

2.2 Map資料結構
利用js中map集合通過差值來尋找,實作代碼如下:

結果:

只回圈一次,然后求得target和當前數值的差值,存放在map里面,去map里面回圈看是否有這個目標值,有的話,回傳對應值的下標,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/255910.html
標籤:其他

