다중 포인터 패턴
// 더하면 0이 되는 쌍을 찾기
sumZero([-3, -2, -1, 0, 1, 2, 3]); // [-3,3]
sumZero([-2, 0, 1, 3]); // undefined
sumZero([1, 2, 3]); // undefined
// 배열이 들어왔을 때 정렬이 되어있어야 효율적임.// 순진한 접근법
function sumZero(arr) {
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] + arr[j] === 0) {
return [arr[i], arr[j]];
}
}
}
}
// 시간복잡도 - O(n^2)
// 공간복잡도 - O(1)Last updated