문제
- nums 와 target이 주어졌을때, 두 원소를 더한 값이 target이 되는 nums의 index를 반환
public class Test {
public static void main(String[] args) {
System.out.println(Arrays.toString(twoSum(new int[]{2,7,11,15}, 9)));
System.out.println(Arrays.toString(twoSum(new int[]{3,2,4}, 6)));
System.out.println(Arrays.toString(twoSum(new int[]{3,3}, 6)));
System.out.println(Arrays.toString(twoSum(new int[]{-3,4,3,90}, 0)));
}
public static int[] twoSum(int[] nums, int target) {
}
}
결과 및 풀이
public static int[] twoSum(int[] nums, int target){
Map<Integer, Integer> bucket=new HashMap<>();
for(int i=0;i<nums.length;i++){
int num=nums[i];
if(bucket.containsKey(num)){
return new int[]{bucket.get(num),i};
}
bucket.put(target-num,i);
}
return null;
}
배웠다