国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

leetcode1. Two Sum

2019-11-09 20:51:23
字體:
供稿:網(wǎng)友

1. Two Sum

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, and you may not use the same element twice.

Example: Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1].

解法一

兩個循環(huán)遍歷,取兩個序號

public class Solution { public int[] twoSum(int[] nums, int target) { int[] result = new int[2]; for(int i = 0; i < nums.length; i++) { for (int j = i + 1; j < nums.length; j++) { if (nums[i] + nums[j] == target) { result[0] = i; result[1] = j; return result; } } } return result; }}

Runtime: 44 ms

解法二

利用hashmap,key存放數(shù)值,value存放出現(xiàn)的位置。從前到后進(jìn)行遍歷,將target值減去當(dāng)前的值,看是否存在map中,

若存在map中則取出相應(yīng)的標(biāo)號,退出。

public class Solution { public int[] twoSum(int[] nums, int target) { int[] result = new int[2]; HashMap<Integer, Integer> map = new HashMap<Integer, Integer>(); for(int i = 0; i < nums.length; i++) { int num = target - nums[i]; if (map.containsKey(num)) { result[0] = map.get(num); result[1] = i; return result; } map.put(nums[i], i); } return result; }}

Runtime: 12 ms


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 玉田县| 武城县| 芮城县| 望奎县| 华安县| 温宿县| 山东| 中江县| 道真| 洛浦县| 常州市| 镇远县| 阿瓦提县| 光山县| 广水市| 慈利县| 鄂伦春自治旗| 纳雍县| 辰溪县| 微山县| 赣榆县| 富平县| 江阴市| 宁远县| 中方县| 平南县| 甘孜| 西宁市| 张家港市| 北京市| 长春市| 法库县| 合作市| 岳池县| 江西省| 威远县| 马鞍山市| 房山区| 易门县| 大理市| 策勒县|