LeetCode刷題筆記 兩數之和

2021-10-24 23:05:26 字數 846 閱讀 6554

題目描述

兩數之和

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。

可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍

示例:給定 nums = [2, 7, 11, 15], target = 9

因為 nums[0] + nums[1] = 2 + 7 = 9

所以返回 [0, 1]

解體思路

簡單實現:

暴力求解,即多次遍歷整數陣列。

for i in nums:

for j in nums:

if(target - i ==j):.

....

..

但注意題目條件,nums陣列中同乙個元素不能使用兩遍,顯然此方法不符合題意。

改進方法

因此不妨設定乙個目標集合,將結果集存起來,即初始化乙個list,每當訪問nums陣列元素時,就將target-nums[i]的值存入list;

list集合與nums[i]比對,若相等,即可輸出結果

for i in nums:

list

.add(target-i)

for j in

list:if

(j==i):.

....

...

**實現
class

solution}}

return final_result;

}}

Leetcode刷題筆記之445 兩數相加

給你兩個 非空 鍊錶來代表兩個非負整數。數字最高位位於鍊錶開始位置。它們的每個節點只儲存一位數字。將這兩數相加會返回乙個新的鍊錶。你可以假設除了數字 0 之外,這兩個數字都不會以零開頭。高階 如果輸入鍊錶不能修改該如何處理?換句話說,你不能對列表中的節點進行翻轉。示例 輸入 7 2 4 3 5 6 ...

LeetCode刷題筆記 兩數相加

給你兩個 非空 的鍊錶,表示兩個非負的整數。它們每位數字都是按照 逆序 的方式儲存的,並且每個節點只能儲存 一位 數字。請你將兩個數相加,並以相同形式返回乙個表示和的鍊錶。你可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 1 輸入 l1 2,4,3 l2 5,6,4 輸出 7,0,8 ...

leetcode刷題筆記 兩數相加 1

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 ...