多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 两数之和 ``` var twoSum = function(nums, target) { if(!nums.length) return []; let num = nums.slice(0); nums.sort((x,y) => x-y); let l = 0,r = nums.length-1; while(l < r){ if(nums[l] + nums[r] === target) break; else if(nums[l] + nums[r] < target){ l++; }else{ r--; } } l = num.indexOf(nums[l]); r = num.indexOf(nums[r]) === l ? num.indexOf(nums[r],l+1) : num.indexOf(nums[r]) return [l,r]; }; ``` 哈希 ``` public int[] twoSum(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)) { return new int[] { map.get(complement), i }; } map.put(nums[i], i); } throw new IllegalArgumentException("No two sum solution"); } ``` # 三数之和 https://leetcode-cn.com/problems/3sum/ ``` ``` # 最接近的三数之和 ``` ```