【leetcode】【1】Two Sum
来源:互联网 发布:java写adb命令 编辑:程序博客网 时间:2024/06/03 18:28
一、问题描述
Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution.
Example:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
二、问题分析
比较经典的一位数组的处理问题。可以利空HashMap来处理,key存nums[i]和target的差值,value存数组的索引。时间复杂度O(n)。
三、Java AC 代码
public int[] twoSum(int[] nums, int target) { int[] res = new int[2];if (nums == null || nums.length < 2) {return res;}HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();for (int i = 0; i < nums.length; i++) {if (!map.keySet().contains(nums[i])) {map.put(target - nums[i], i);} else {int tmp = map.get(nums[i]);if (tmp > i) {res[0] = i + 1;res[1] = tmp + 1;} else {res[0] = tmp + 1;res[1] = i + 1;}}}return res; }
0 0
- LeetCode 1 - Two Sum
- leetcode 1 Two Sum
- Leetcode【1】:Two Sum
- [leetcode 1] Two Sum
- 【leetcode-1】Two Sum
- [leetcode 1] Two Sum
- [Leetcode] 1 - Two Sum
- LeetCode (1) Two Sum
- LeetCode 1:《Two Sum》
- LeetCode | #1 Two Sum
- leetcode-1 Two Sum
- Two Sum | LeetCode(1)
- [Leetcode]1Two Sum
- leetcode 1 Two Sum
- leetcode #1 Two Sum
- leetcode 1:Two Sum
- LeetCode 1 Two Sum
- leetcode #1 two sum
- JQuery中的事件和选择器
- hdoj 2083 简易版之最短距离
- 【Java】----线程同步:生产-消费问题
- iOS-NavigationBar手势返回的时候跟随
- 【Web API系列教程】3.9 — 实战:处理数据(添加新条目到数据库)
- 【leetcode】【1】Two Sum
- Ibatis易错点要记
- 修改tomcat端口,使一台机器同时运行2个tomcat
- iOS9-by-Tutorials-学习笔记一:Swift-2-0
- Android如何查看应用签名信息
- iOS9-by-Tutorials-学习笔记二:App-Search
- mysql开启慢SQL并分析原因
- 魔术索引I
- iOS9-by-Tutorials-学习笔记三:Your-App-on-the-Web