今天无意之间刷到一个大四毕业的师兄发布的公众号,受益匪浅,感觉可以先来做做题目...
题目:给定一个整数数组 nums
和一个整数目标值 target
,请你在该数组中找出 和为目标值 target
的那 两个 整数,并返回它们的数组下标。
自己的思路:对于给定的一个数组,目前水平只能暴力解决,进行嵌套的for循环,使第i个数分别去加它后面的每个数,这样就能保证每一个数都能相加。
刚开始错误的做法,在进行第二次for循环时,把j从0开始加,导致会出现自己加自己的情况,导致错误,正确做法应该是j从i+1开始,就能使每个数加到后面的数。
下面是代码演示
class Solution {
int sums[] = new int[2];
public int[] twoSum(int[] nums, int target) {
for(int i = 0; i < nums.length; i++){
for(int j = i+1; j < nums.length; j++){
int sum = nums[i] + nums[j];
if(sum == target){
sums[0] = i;
sums[1] = j;
return sums;
}
}
}return null;
}
}