Two Sum|leetcode 1【Java解題レポート】


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
【問題解決の考え方】:
現在は蛮力アルゴリズムしか考えられず、1つずつ遍歴し、2つの数の和が9になると、すぐにこの2つの数のインデックスを配列に入れ、返します.まず分かち合いましょう.後で改善します.
【コード実装】:
public class Solution {
    public int[] twoSum(int[] nums, int target) {
        int[] indexs = new int[2];
        int len = nums.length;
        for(int i=0; i<len; i++) {                        //    
            for(int j=i+1; j < len; j++) {               //      index 1,    i+1 len-1   
                if(nums[i] + nums[j] == target) {       //    target    
                    indexs[0] = i + 1;
                    indexs[1] = j + 1;
                    return indexs;
                }
            }
        }
        return null;
    }
}

最後に、皆さんの批判と指摘を歓迎します.