leetcode刷题笔记-two sum
来源:互联网 发布:python for循环遍历 编辑:程序博客网 时间:2024/04/30 05:56
问题描述:
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].
给定一个数组int[] nums,给定一个数target,要求返回数组中相加等于target的两个数的下标组成的数组:
解题思路:
用两层循环查找,时间复杂度
public int[] twoSum(int[] nums, int target) { int[] a = new int[2]; boolean flag = false; for (int i = 0; i < nums.length - 1; i++) { for (int j = i + 1; j < nums.length; j++) { if (nums[i] + nums[j] == target) { a[0] = i; a[1] = j; break; } } if (flag) break; } return a; }
改进的算法,使用HashMap时间复杂度为
public int[] twoSum(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < nums.length; i++) { int value = target - nums[i]; if (map.containsKey(value)) { return new int[] { map.get(value), i }; } map.put(nums[i], i); } throw new IllegalArgumentException("No such solution"); }
0 0
- leetcode刷题笔记-two sum
- LeetCode刷题笔记 01 Two Sum
- LeetCode刷题笔记(Two Sum)
- [leetCode刷题笔记]371. Sum of Two Integers
- leetcode 1 two sum 刷题学习笔记
- LeetCode笔记:1. Two Sum
- LeetCode笔记:1. Two Sum
- LeetCode笔记1--Two Sum
- 刷leetcode:Two Sum
- [leetcode刷题系列]Two Sum
- LeetCode刷题笔录 Two Sum
- Leetcode刷题日记 -- Two Sum
- python刷题笔记1--Two Sum
- leetcode 第一题 two sum
- LeetCode 第一题,Two Sum
- leetcode第一题two sum
- Two Sum leetcode第一题
- two Sum leetCode第一题
- Leetcode 79. Word Search & 212. Word Search II
- 关于CANVAS画圆的弧度角度问题--转载自Slience
- assert()函数用法
- [Android App] 内涵段子最新5.5.5 去广告去更新修改版
- 每日一面试题--MVC思想是什么?
- leetcode刷题笔记-two sum
- Java关键字static小结
- 香港喜运佳,承载着太多的回忆
- jdk官网下载的具体步骤
- SQL SERVER FOR XML PATH
- Modeling System Behavior with Use Case(2)
- Android广播详解
- Service异常Service Intent must be explitict
- php如何开启COM组件