
主要内容:Leetcode-JAVA版,参考:leetcode,LeetCode All in One 题目讲解汇总
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].
给定一个array和一个数,输出两个数相加和为给定数的下标
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
package com.zhang.sfa;
import java.util.HashMap;
public class { public int[] twoSum(int[] nums, int target) { HashMap<Integer, Integer> m = new HashMap<Integer, Integer>(); int[] res = new int[2]; for (int i = 0; i < nums.length; ++i) { if (m.containsKey(target - nums[i])) { res[0] = i; res[1] = m.get(target - nums[i]); break; } m.put(nums[i], i); } return res; }
public static void main(String[] args) { int[] nums = {2, 7, 11, 15}; int target = 9; Two_Sum sum=new Two_Sum(); int[] result=sum.twoSum(nums, target); for (int element: result) { System.out.println(element); } } }
|
2.Add Two Numbers
近期评论