給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。興致勃勃開啟第一題,快速瀏覽一遍,恩,可以,很簡單你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。
給定 nums = [2, 7, 11, 15], target = 9
因為 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
題目**
快速用c 寫完自己**,函式列表都是定死的。
暴力解法,雙重迴圈
int* twosum(int* nums, int numssize, int target, int* returnsize)}}
return null;
}
自我感覺沒有問題…開始提交,額,報錯了
關鍵是第二次提交,報的錯誤不一樣,編譯通過了,是結果不對。
先記下來,看哪天我能明白到底是什麼原因吧。
自己寫的效率很低,暴力解法,所以去網上借鑑大佬的。
普遍是說用hash表。因為hash表查詢時間是o(1)。
兩遍hash表**如下
class solution
for (int i = 0; i < nums.length; i++) ;}}
throw new illegalargumentexception("no two sum solution");}}
其實可以簡化成一次hash表,在插入的時候同時檢查
class solution ;
}map.put(nums[i], i);
}throw new illegalargumentexception("no two sum solution");}}
Leetcode 第一題 兩數之和
給定乙個整數陣列nums和乙個目標值target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 7 9 所...
LeetCode第一題 兩數之和
給定乙個整數陣列nums和乙個目標值target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。給定nums 2,7,11,15 target 9 因為nums 0 nums 1 2 7 9 所以返回...
LeetCode第一題 兩數之和
給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。1.示例給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2...