1、两数之和(2022.1.31):链接
方法一:暴力法
class Solution {
public int[] twoSum(int[] nums, int target) {
int n=nums.length;
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(nums[i]+nums[j]==target)
return new int[]{i,j};
}
}
return new int[]{0};
}
}
方法二:哈希表
class Solution {
public int[] twoSum(int[] nums, int target) {
Map<Integer,Integer>finder=new HashMap<Integer,Integer>();
for(int i=0;i<nums.length;i++)
{
if(finder.containsKey(target-nums[i]))
return new int[]{finder.get(target-nums[i]),i};
finder.put(nums[i], i);
}
return new int[]{0};
}
}