提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 描述
描述
方式1:暴力遍历
public static int[] twoSum(int[] nums, int target) {
int i =0;
int j =1;
int[] result = new int[2];
for(int m =i;m<=nums.length-1;m++){
for (int n=j;n<=nums.length-1;n++){
if (target==nums[i]+nums[j]){
result[0]=i;
result[1]=j;
}else{
j++;
}
}
i++;
j=i+1;
}
return result;
}
缺点:for循环重复扫描
方式2: 引入“容器”hashMap存放已经扫描过的值
HashMap<Integer,Integer> hashMap = new HashMap<>();
public int[] twoSum2(int[] nums, int target) {
int[] result = new int[2];
for (int i=0;i<nums.length;i++){
int temp = target-nums[i];
if (hashMap.get(temp)!=null){
int anotherIndex = hashMap.get(temp);
result[0]=i;
result[1]=anotherIndex;
}else {
hashMap.put(nums[i],i);
}
}
return result;
}