lintCode 56 兩數之和

2021-08-04 07:35:26 字數 756 閱讀 7703

給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。

你需要實現的函式twosum需要返回這兩個數的下標, 並且第乙個下標小於第二個下標。注意這裡下標的範圍是 1 到 n,不是以 0 開頭。

注意事項

你可以假設只有一組答案。

樣例

給出 numbers = [2, 7, 11, 15], target = 9, 返回 [1, 2].

借助hashmap< integer,object >,key記錄陣列元素值,object記錄 index+1。

將陣列numbers中元素全部放入hashmap< integer,object > hash;

從numbers第乙個元素開始,計算 num= target-numbers[i] ;

以num作為key,在hash中尋找是否有該記錄;如果則找到了;沒有 轉(2);

返回值

public

static

int twosum(int numbers, int target)

for(i=0;iindex=hash.get(num);

//使用hashmap而不是hashmap,因為要將index與null比較

if(index!=null&&(int)index!=(i+1))

}return a;

}

lintcode 56 兩數之和

描述 給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。你需要實現的函式twosum需要返回這兩個數的下標,並且第乙個下標小於第二個下標。注意這裡下標的範圍是 0 到 n 1。tips 你可以假設只有一組答案。樣例 給出 numbers 2,7,11,15 target 9,返回...

lintcode 56 兩數之和

給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。你需要實現的函式twosum需要返回這兩個數的下標,並且第乙個下標小於第二個下標。注意這裡下標的範圍是 0 到 n 1。給出 numbers 2,7,11,15 target 9,返回 0,1 either of the foll...

兩次過 Lintcode 56 兩數之和

給乙個整數陣列,找到兩個數使得他們的和等於乙個給定的數 target。你需要實現的函式twosum需要返回這兩個數的下標,並且第乙個下標小於第二個下標。注意這裡下標的範圍是 0 到 n 1。example1 給出 numbers 2,7,11,15 target 9,返回 0,1 example2 ...