인프런 커뮤니티 질문&답변
코드리뷰 부탁드립니다 항상 감사합니다!
작성
·
299
0
오랜만에 제 힘으로 풀어본 문제입니다
해설과 달라서 코드리뷰 한번 부탁드리고자 글을 써 봅니다
<html>
<head>
<meta charset="UTF-8" />
<title>출력결과</title>
</head>
<body>
<script>
function solution(k, arr) {
let answer = 0;
let sum = 0;
for (let i = 0; i <= arr.length - k; i++) {
sum = 0;
for (let j = i; j < i + k; j++) {
sum += arr[j];
}
answer = Math.max(sum, answer);
}
return answer;
}
let a = [12, 15, 11, 20, 25, 10, 20, 19, 13, 15];
console.log(solution(3, a));
</script>
</body>
</html>
퀴즈
45%나 틀려요. 한번 도전해보세요!
투 포인터 또는 슬라이딩 윈도우 기법이 중첩 반복문보다 효율적인 주된 이유는 무엇일까요?
더 적은 메모리를 사용해서일까요?
코드가 더 짧아져서일까요?
대부분의 경우 O(N) 시간 복잡도를 달성해서일까요?
입력 데이터 크기에 영향을 받지 않아서일까요?
답변 1
0
김태원
지식공유자
안녕하세요^^
잘 하신 코드입니다. 스스로 구현을 했다는 사실이 중요한 것 같습니다.
조금 얘기를 드리면 위에 코드는 2중 for문으로 했기때문에 시간복잡도가 영상의 방법보다는 좋지 않습니다.
영상에서 하는 슬라이딩 윈도우 기법도 잘 아아 두시기 바랍니다.





