题目描述:
给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列。
例如:
给出的数组为 [20, 70, 110, 150] , 目标值为90
返回一个数组 [1,2] ,因为
示例1
输入:[3,2,4],6 返回值:[2,3]
说明:因为 2+4=6 ,而 2的下标为2 , 4的下标为3 ,又因为 下标2 < 下标3 ,所以输出[2,3]
示例2
输入:[20,70,110,150] 返回值:[1,2]
思路:暴力求解
两层循环挨个相加求和 ,用一个数组存储需要返回的下标,返回的下标记得要加1,因为题目的下标是按1开始的。
代码及详情如下:
import java.util.*;
public class Solution {
/**
*
* @param numbers int整型一维数组
* @param target int整型
* @return int整型一维数组
*/
public int[] twoSum (int[] numbers, int target) {
int[] num=new int[2];
for(int i=0;i<numbers.length;i++){
for(int j=i+1;j<numbers.length;j++){
if(numbers[i]+numbers[j]==target){
num[0]=i+1;
num[1]=j+1;
return num;
}
}
}
return num;
}
}
思路:哈希
……