leetcode1 TwoSum--java使用Hashtable实现
来源:互联网 发布:java编程思想第四版 编辑:程序博客网 时间:2024/06/03 06:50
Given an array of integers, find two numbers such that they add up to a specific target number.
The function twoSum should return indices of the two numbers such that they add up to the target, where index1 must be less than index2. Please note that your returned answers (both index1 and index2) are not zero-based.
You may assume that each input would have exactly one solution.
Input: numbers={2, 7, 11, 15}, target=9
Output: index1=1, index2=2
使用Hashtable,查找速度为常数,具体java代码如下:
import java.util.Hashtable;public class Solution {public int[] twoSum(int[] nums,int target){Hashtable<Integer,Integer> ht = new Hashtable<Integer,Integer>();int[] a = new int[2];for(int i=0;i<nums.length;i++){Integer n = ht.get(nums[i]);if(n==null){ht.put(nums[i], i);}n=ht.get(target-nums[i]);if(n!=null&&n<i){ //注意一定要有n<i,否则可能出现重复元素导致结果错误a[0]=n+1;a[1]=i+1;return a;}}return a;}}
0 0
- leetcode1 TwoSum--java使用Hashtable实现
- LeetCode1 TwoSum (java实现)
- LeetCode1 TwoSum Java
- LeetCode1: TwoSum
- leetcode1 twosum
- leetcode1 : twosum
- LeetCode1 TwoSum
- Leetcode1 twosum
- leetcode1 || TwoSum
- LeetCode1-TwoSum
- LeetCode1.TwoSum(C)
- Java的Hashtable实现
- Java Hashtable的实现
- java hashtable 使用
- leetcode1
- leetcode1
- leetcode1
- leetcode1
- Fidder 进行web调试
- Android开源项目第三篇——优秀项目篇
- AngularJS快速开始(二)--与jQuery比较来认识AngularJS
- soap学习
- 程序员如何让自己更值钱?
- leetcode1 TwoSum--java使用Hashtable实现
- typedef函数指针用法
- swift之mutating关键字
- android 自适应空间大小
- 微软OneDrive 免费云盘容量有多大?坑爹15GB 太小、太慢
- 超详细的Makefile
- 杭电1423(Greatest Common Increasing Subsequence)
- UML用例图
- CSS white-space 属性