나 와 함께 알고리즘 시리즈 1 - Two Sum (java)

1028 단어
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].
제목: 한 배열 의 두 위치 에 있 는 수의 합 은 target 이 고 이 두 위 치 를 구 합 니 다.
해법: 맵 으로 나타 난 수 를 기록 할 수 있 습 니 다. 현재 의 수 와 target 의 수 를 모 았 는 지 판단 하고 찾 으 면 됩 니 다.
실현:
public class Solution {
    public int[] twoSum(int[] nums, int target) {
        int[] result = new int[2];
        Map map = new HashMap();
        for(int i = 0; i < nums.length; i++)
        {
            if(map.containsKey(target-nums[i]))
            {
                result[0] = map.get(target-nums[i]);
                result[1] = i+1;
                break;
            }
        
            map.put(nums[i],i+1);
        }
    
        return result;
     }
}

좋은 웹페이지 즐겨찾기