📚 단일 패턴
1. Two Sum
Hash Map을 사용하여 배열에서 두 숫자의 합이 목표값이 되는 인덱스를 O(n) 시간에 찾기
Oct 1, 2025 — hash
- 최초 leetcode 입문해서 놀랐던 문제. one path 로 할 수 있다구 ?
- Array 에서 숫자를 순회하면서 hash map 에
[num, index]
를 저장 - 현재 숫자와 합해서 target 을 만들어야 하므로 내가 찾아야 하는 숫자는 (target - num)
- hash map에 (target - num)이 저장되어 있는지 체크
- 있다면 빙고
- 없다면 다음을 위해서 hash map 에
[num, index]
를 저장
/** * @param {number[]} nums * @param {number} target * @return {number[]} */var twoSum = function(nums, target) { const map = new Map();
for (const [ index, num ] of nums.entries()) { if (map.has(target - num)) { return [ map.get(target - num), index] } else { map.set(num, index); } } return [];};