給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。
你需要實現的函式twosum
需要返回這兩個數的下標, 並且第乙個下標小於第二個下標。注意這裡下標的範圍是 0 到 n-1。
給出 numbers =[2, 7, 11, 15]
, target =9
, 返回[0, 1]
.
either of the following solutions are acceptable:
我一看這個o(nlogn) time就開心了,一看就是二分查詢嘛,結果給自己弄坑里去了:)
因為二分查詢需要排序,排序會改變原始座標,所以需要copy乙個原始函式,判斷copy函式的時候還要注意不能搞成相同的位置,踩完坑了之後終於過了。。後來隨手一搜發現大家都hashmap o(n)搞定。我雜湊函式學太差,只是感覺這個不是o(n)空間能搞定的,等我搞清楚hashmap咋回事再回來改。
class solution
else if(target < numbers[mid])
else
}return res;
}void copy(vector&numbers, vector©_num)
else
return res;}}
return res;
}};
lintCode 56 兩數之和
給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。你需要實現的函式twosum需要返回這兩個數的下標,並且第乙個下標小於第二個下標。注意這裡下標的範圍是 1 到 n,不是以 0 開頭。注意事項 你可以假設只有一組答案。樣例 給出 numbers 2,7,11,15 target ...
lintcode 56 兩數之和
描述 給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。你需要實現的函式twosum需要返回這兩個數的下標,並且第乙個下標小於第二個下標。注意這裡下標的範圍是 0 到 n 1。tips 你可以假設只有一組答案。樣例 給出 numbers 2,7,11,15 target 9,返回...
兩次過 Lintcode 56 兩數之和
給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。你需要實現的函式twosum需要返回這兩個數的下標,並且第乙個下標小於第二個下標。注意這裡下標的範圍是 0 到 n 1。example1 給出 numbers 2,7,11,15 target 9,返回 0,1 example2 ...