LeetCode1 两数之和
题目:给定一个整数数列,找出其中和为特定值的那两个数。
假设每个输入都只会有一种答案!!,同样的元素不能被重用。
示例:
给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]
public class third { public static void main(String[] args) { int target = 9; int[] nums={0,7,21,2}; int[] jg=method1(nums,target); for(int i:jg){ System.out.println(i); } } static int[] method1(int[] nums,int target){ HashMap<Integer,Integer> map= new HashMap<Integer, Integer>(); for(int i=0;i<nums.length;i++){ map.put(nums[i],i); } for(int i=0;i<nums.length;i++){ int res=target-nums[i]; if(map.containsKey(res)){ return new int[]{i,map.get(res)}; } } return new int[0]; } }