publicint[] twoSum(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>();
for(int i = 0; i < nums.length; i++){ map.put(nums[i],i); }
for(int i = 0; i < nums.length; i++){ int complement = target - nums[i]; if (map.containsKey(complement) && map.get(complement) !=i){ returnnewint[]{i,map.get(complement)}; } } thrownew IllegalArgumentException("No two sum solution"); }
publicint[] twoSum2(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>();
for(int i = 0; i < nums.length; i++){ int complement = target - nums[i]; if (map.containsKey(complement)) { returnnewint[]{map.get(complement),i}; } map.put(nums[i],i); } thrownew IllegalArgumentException("No two sum solution"); }