leetcode每日一题——两数之和
- 题目:
两数之和
- 难度:
简单
- 描述:
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。
你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。
- 解法:
class Solution {
public int[] twoSum(int[] nums, int target) {
//key:数组元素数值 value:数组元素位置
Map<Integer, Integer> addElementFirst = new HashMap<Integer, Integer>();
for (int i = 0; i < nums.length ; i++) {
//新的元素数值,Map中不包含则put
if (!addElementFirst.containsKey(nums[i])) {
addElementFirst.put(nums[i], i);
}
//当前元素数值对应求和的另一个加数
int eleSecond = target - nums[i];
//另一个加数是之前加入到Map中的情况
if (addElementFirst.containsKey(eleSecond) && addElementFirst.get(eleSecond) != i) {
return new int[]{addElementFirst.get(eleSecond), i};
}
}
return new int[]{-1, -1};
}
}
- 总结:
求和问题可以换个思路考虑——做差,然后在Map中快速搜索找到正解。
leetcode每日一题——两数之和的更多相关文章
- 【JavaScript】Leetcode每日一题-平方数之和
[JavaScript]Leetcode每日一题-平方数之和 [题目描述] 给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a2 + b2 = c . 示例1: 输入:c = 5 ...
- 【leetcode】 算法题 两数之和
问题 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例: 给定 nums = [2, 7, 11, 1 ...
- leetcode刷题--两数之和(简单)
一.序言 第一次刷leetcode的题,之前从来没有刷题然后去面试的概念,直到临近秋招,或许是秋招结束的时候才有这个意识,原来面试是需要刷题的,面试问的问题都是千篇一律的,只要刷够了题就差不多了,当然 ...
- Leetcode:0002(两数之和)
LeetCode:0002(两数之和) 题目描述:给定两个非空链表来表示两个非负整数.位数按照逆序方式存储,它们的每个节点只存储单个数字.将两数相加返回一个新的链表.你可以假设除了数字 0 之外,这两 ...
- Leetcode(1)两数之和
Leetcode(1)两数之和 [题目表述]: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标.你可以假设每种输入只会对应一 ...
- 【python】Leetcode每日一题-丑数2
[python]Leetcode每日一题-丑数2 [题目描述] 给你一个整数 n ,请你找出并返回第 n 个 丑数 . 丑数 就是只包含质因数 2.3 和/或 5 的正整数. 示例1: 输入:n = ...
- 【python】Leetcode每日一题-丑数
[python]Leetcode每日一题-丑数 [题目描述] 给你一个整数 n ,请你判断 n 是否为 丑数 .如果是,返回 true :否则,返回 false . 丑数 就是只包含质因数 2.3 和 ...
- leetCode刷题 | 两数之和
两数之和: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数 ...
- [LeetCode] 1. Two Sum 两数之和
Part 1. 题目描述 (easy) Given an array of integers, return indices of the two numbers such that they add ...
随机推荐
- easyUI的column的field的颜色属性
{field:'hasPrintStr',title:'状态',width:10,halign:'center',align:'right',styler: function(value,row,i ...
- 将字符“12345”转换成long型
将字符“12345”转换成long型 解答: String s=”12345″; long num=Long.valueOf(s).longValue();
- 请写出一个超链接,点击链接后可以向zhangsan@d-heaven.com发送电子邮件。
请写出一个超链接,点击链接后可以向zhangsan@d-heaven.com发送电子邮件. <a href=”mailto: zhangsan@d-heaven.com”>发邮件</ ...
- redis php 实例二
前面一篇博客主要是string类型,list类型和set类型,下面hash类型和zset类型 1,hset 描述:将哈希表key中的域field的值设为value.如果key不存在,一个新的哈希表被创 ...
- java强软弱虚引用详解(转载)
转载自:http://zhangjunhd.blog.51cto.com/113473/53092/ ava:对象的强.软.弱和虚引用 2007-12-01 17:20:20 标签:Java 软引用 ...
- 下载xftp,xshell进行与linux端的远程操作
在window下下载xftp5和xshell5 xshell主要是对远程的及其进行访问,在远程的情况下进行操作 xftp可以对远程的机器进行文件传输. 我安装这两个是单个的安装的. 进入官网 http ...
- 71、Android上对Cookie的读写操作
Cookie是为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据,在Android中也经常用到,接下来我们介绍Cookie在Android里是如何进行读写的. Cookie其实就 ...
- poj3683(2-SAT 求任意方案)
基础的2-SAT求任意方案的题目. Priest John's Busiest Day Time Limit: 2000MS Memory Limit: 65536K Total Submissi ...
- [LintCode] 第k大元素
基于快速排序: class Solution { public: /* * param k : description of k * param nums : description of array ...
- 【转】Spring MVC 3.x 基本配置
WEB-INF/web.xml 例1 <?xml version="1.0" encoding="UTF-8"?> <web-app xmln ...