Two Sum Leetcode Java

Posted 冰凌花花~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Two Sum Leetcode Java相关的知识,希望对你有一定的参考价值。

 

 

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].

 

UPDATE (2016/2/13):
The return format had been changed to zero-based indices. Please read the above updated description carefully.

 

public class Solution {
    public int[] twoSum(int[] nums, int target) {
        int[] copy = new int[nums.length]; 
        int index1 = 0;
        int index2 = nums.length - 1;
        int first = -1;
        int second = -1;
        int[] result = new int[2];
        System.arraycopy(nums, 0, copy, 0, nums.length);
        Arrays.sort(copy);
        
        while (index1 < index2) {
          if (copy[index1] + copy[index2] == target) {
              result[0] = copy[index1];
              result[1] = copy[index2];
              break;
          }else if(copy[index1] + copy[index2] < target){
              index1++;
          }else{
              index2--;
          }
        }
        for(int i = 0; i < nums.length; i++){
            if (result[0] == nums[i] && first == -1){
              first = i;
            }else if (result[1] == nums[i] && second == -1){
              second = i;
            }
        }
       
        result[0] = first;
        result[1] = second;
        return result;
    }
}

 


以上是关于Two Sum Leetcode Java的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 1. Two Sum (java)

LeetCode 力扣1. Two Sum 两数之和 Java 解法

LeetCode 力扣1. Two Sum 两数之和 Java 解法

Leetcode 371. Sum of Two Integers JAVA语言

LeetCode 1. Two Sum Java

leetcode two_sum (easy) /java