题目:
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素
举例: nums=[]{3,2,5,9,6},target=9,输出[0,4]。
思路:设定一个temp,用于临时存放数据。利用冒泡思维,外层循环每次更新temp的值,内层循环用temp和其他四个数做加法运算,每次运算得到的值和target比对,如果相等,退出循环
代码:
public class MyClass {
private int temp=0;
private boolean isEquals;
public int[] twoSum(int[] nums, int target) {
int[] indexs=new int[2];
for(int i=0;i<nums.length;i++){
if(isEquals){
break;
}
temp=nums[i];
for(int j=i+1;j<nums.length;j++){
if((temp+nums[j])==target){
indexs[0]=i;
indexs[1]=j;
isEquals=true;
break;
}
}
}
System.out.println(indexs[0]);
System.out.println(indexs[1]);
return indexs;
}
public static void main(String[] args) {
MyClass test=new MyClass();
int[] nums = new int[]{3,2,5,9,6};
test.twoSum(nums,9);
}
}