背景
我自認(rèn)為自己是個(gè)沒有毅力厉碟,想改變自己卻總是無法堅(jiān)持躲雅,很苦惱鼎姊,也很沮喪。前幾天聽到關(guān)于微習(xí)慣的培養(yǎng)問題相赁,決定從現(xiàn)在開始寫簡(jiǎn)書相寇,每天堅(jiān)持發(fā)一篇文章,哪怕是幾十個(gè)字記錄自己的生活钮科,目的就是培養(yǎng)自己的意志力唤衫,慢慢的改變自己。
今天是第一天绵脯,刷刷LintCode的題佳励,先從最簡(jiǎn)單的開始,目的是培養(yǎng)每天編程的習(xí)慣桨嫁,大家可以來相互監(jiān)督和學(xué)習(xí)植兰。
求兩數(shù)之和
- 題目:給一個(gè)整數(shù)數(shù)組,找到兩個(gè)數(shù)使得他們的和等于一個(gè)給定的數(shù) target璃吧。
- 要求:你需要實(shí)現(xiàn)的函數(shù)twoSum需要返回這兩個(gè)數(shù)的下標(biāo), 并且第一個(gè)下標(biāo)小于第二個(gè)下標(biāo)楣导。注意這里下標(biāo)的范圍是 1 到 n,不是以 0 開頭畜挨。
- 樣例:給出 numbers = [2, 7, 11, 15], target = 9, 返回 [1, 2].
我的答案如下:
public class Solution {
/*
* @param numbers : An array of Integer
* @param target : target = numbers[index1] + numbers[index2]
* @return : [index1 + 1, index2 + 1] (index1 < index2)
*/
public int[] twoSum(int[] numbers, int target) {
// write your code here
int[] result = new int[2];
for (int i = 0; i < numbers.length; i++) {
result[0] = i + 1;
for (int j = 1; j < numbers.length; j++) {
if (i >= j) {
continue;
}
result[1] = j + 1;
if (target == (numbers[i] + numbers[j])) {
return result;
}
}
}
return result;
}
}
同學(xué)們有好的思路和想法可以踴躍討論筒繁!