两数之和JAVA:
关于两数之和,题目是任意给出一组一维数组,且给出一个目标数,程序需完成的是:
1、找到数组中相加等于目标数的数组下标
2、返回一个新的数组,该数组包括过程1中数组下标
3、返回的数组下标不可重复出现相同的下标数字
这道题解题有几个JAVA知识点需掌握:
A 数组的灵活应用:包括定义一个数组、取数组的长度、数组中数的取得
B 循环:FOR语句、嵌套循环
C if判断
掌握以上知识点,仍有在题目中的小困难,总结为:
1、当有两组数需要循环且恰巧需要使用FOR嵌套循环时,先固定不动的数字放置于外循环,每次都需要变动的数字放置于内循环。
假设有i = 0与j,其中j每次1,2,3,4…的循环,而i等j循环结束一次后再增加(i = 1),j依旧循环。
2、return的使用:
return 一般用于有返回值的方法中。
以下附上代码:
class Solution {
public int[] twoSum(int[] nums, int target) {
int str[] = new int[2];
int numL = nums.length;
int i = 0;
int j = 0;
for(;i < numL;i++){//保持i=0不变,持续增加j
for(j = i + 1;j < numL;j++) {
if(nums[i] + nums[j] == target) {//判断数组0与1相加是否等于目标数
str[0] = i;
str[1] = j;
return str;
}
}
return str;
}
}