class Solution {
public int[] twoSum(int[] nums, int target) {
//利用map key存储nums对应下标的值,value存储下标,使用下标保证每次利用的
//数字不重复。
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");
}
}
两数之和
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1. 两数之和 题目描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那...
- 1.两数之和 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样...
- 已知两个1~30之间的数,甲知道两数之和,乙知道两数之积。甲问乙:“你知道是哪两个数吗?”乙说:“不知道”;乙问甲...
- 通过 “同时赋值”操作可以同时计算多个值。 同时赋值公式: , ,..., = <expr1>,<expr2>,...
- 今天开始记录每天学习一道两道的算法题,由简入难。今天一共学习了两道算法,一道简单一道中等,分别为两数之和、两数相加...