【LeetCode从零单排(Java)】No1.Two Sum
来源:互联网 发布:初中化学软件有哪些 编辑:程序博客网 时间:2024/05/19 17:51
题目
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].
暴力枚举法
public class Solution { public int[] twoSum(int[] nums, int target) { for(int i = 0;i<nums.length ;i++ ) { for(int m = 0;m<nums.length ;m++ ) { if(nums[i] +nums[m] == target &&m!= i) { int[] arr = new int[2]; arr[0]= i; arr[1]= m; return arr; } } } return null; }}
//使用hash表
public class Solution { public int[] twoSum(int[] nums, int target) { int[] result = new int[2]; int n; Integer idx; Map<Integer, Integer> map = new HashMap<Integer, Integer>(nums.length); for (int i = 0; i < nums.length; i++) { map.put(nums[i], i); } for (int i = 0; i < nums.length - 1; i++) { n = target - nums[i]; idx = map.get(n); if(idx != null && idx > i){ result[0] = i; result[1] = idx; break; } } return result; } }
使用第二种方法可大幅提高算法时间
0 0
- 【LeetCode从零单排(Java)】No1.Two Sum
- 【LeetCode从零单排(Java)】No2. Add Two Numbers
- leetcode No1. Two Sum
- 【LeetCode从零单排】No112Path Sum
- 【LeetCode从零单排】No15 3Sum
- LeetCode : No1 Two Sum Python
- LeetCode Problem No1 Two Sum
- 【LeetCode从零单排】No129 Sum Root to Leaf Numbers
- 【LeetCode从零单排(Java)】No3. Longest Substring Without Repeating Characters
- No1.Two Sum
- 【LeetCode从零单排】No.160 Intersection of Two Linked Lists
- 【LeetCode从零单排】No14.LongestCommonPrefix
- 【LeetCode从零单排】No20.ValidParentheses
- 【LeetCode从零单排】No19.RemoveNthNodeFromEndofList
- 【LeetCode从零单排】No21.MergeTwoSortedLists
- 【LeetCode从零单排】No27.Remove Element
- 【LeetCode从零单排】No28Implement strStr()
- 【LeetCode从零单排】No36Valid Sudoku
- Java中的文件操作和对象的序列化
- 用递归算法实现斐波那契数列显示(Java)
- Android cardview 去掉圆角和去掉背景
- git设置用户名密码
- 背包问题 — — NYOJ 860 又见01背包
- 【LeetCode从零单排(Java)】No1.Two Sum
- 51Nod 1003 阶乘后面0的数量
- 1000-A
- 機器學習基石 机器学习基石 (Machine Learning Foundations) 作业二 Q19-20 C++实现
- Java中的文件读写字节流,字符流
- rpm包安装过程中依赖问题“libc.so.6 is needed by XXX”解决方法
- java学习笔记-面向对象(三)
- Burp Suite使用介绍(二)
- acm_problem_1002