有没有做网站的电话,网址大全官方免费下载安装,网站上做的图片不清晰是怎么回事,网络运营者不是指问题描述#xff1a; 给定一个整数数组 nums 和一个整数目标值 target#xff0c;请你在该数组中找出 和为目标值 target 的那 两个整数#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是#xff0c;数组中同一个元素在答案里不能重复出现。 示… 问题描述 给定一个整数数组 nums 和一个整数目标值 target请你在该数组中找出 和为目标值 target 的那 两个整数并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是数组中同一个元素在答案里不能重复出现。 示例 1 输入nums [2,7,11,15], target 9
输出[0,1]
解释因为 nums[0] nums[1] 9 返回 [0, 1] 。示例 2 输入nums [3,2,4], target 6
输出[1,2]示例 3 输入nums [3,3], target 6
输出[0,1] 暴力枚举
class Solution {public int[] twoSum(int[] nums, int target) {int n nums.length;for( int i 0 ; i n; i){for(int j i1; jn; j){if(nums[i]nums[j] target){return new int[]{i,j};}}}throw new IllegalArgumentException(No two sum solution);}
}Hash表:
class Solution {public int[] twoSum(int[] nums, int target) {MapInteger, Integer hashtable new HashMapInteger, Integer();for (int i 0; i nums.length; i) {if (hashtable.containsKey(target - nums[i])) {return new int[] { i, hashtable.get(target - nums[i]) };}hashtable.putIfAbsent(nums[i], i);}throw new IllegalArgumentException(No two sum solution);}
}