兩數之和:link
1.題目分析
1.為了以o(n)的時間複雜度完成尋找,那麼只能是遍歷一遍或者多遍,而且在每個位置操作的時間複雜度是常數時間。2.**示例2.逆向思維,把找兩個數轉換成⟶
\longrightarrow
⟶檢視每個數是否有與其相加之和滿足條件的數
3.為了在常數時間內完成匹配查詢,可以先遍歷一遍預處理生成乙個
unordered_mapnum2index
,數到陣列下標的對映。因為把乙個數和它前面的所有的數相互組合可以產生整個陣列的兩兩組合的所有組合,所以可以遍歷的同時生成這個unordered_map
.
class
solution;}
num2index[nums[i]
]= i;
}return vector<
int>()
;}};
LeetCode 題解 1 兩數之和
力扣 leetcode 已認證的官方帳號 關注他 15 人贊同了該文章 給定乙個整數陣列和乙個目標值,找出陣列中和為目標值的兩個數。你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 7 9 ...
LeetCode1 兩數之和題解
給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍。舉個例子 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 7 9...
題解 LeetCode 1 兩數之和
原題傳送 leetcode 1.兩數之和 給定乙個整數陣列nums和乙個目標值target,請你在該陣列中找出和為目標值的那 兩個整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍。給定 nums 2,7,11,15 target 9 因為 nums ...