강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

김연수님의 프로필 이미지
김연수

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

3. 연속부분수열1(Two Pointers Algorithm)

연속 부분수열1

작성

·

247

0

안녕하세요 선생님.

이렇게 코드를 작성한 경우, 선생님께서 설명해주신 코드보다 시간복잡도에서 차이가 클까요?

            function solution(marr){
                let n = arr.length;
               let p1 = p2 = 0;
               let answer = 0;
               while (p2 < n){
                   let sum = arr.slice(p1p2+1).reduce((a,b)=>a+b0);
                   ifsum < m ){
                       p2++;
                   } else if(sum > m){
                       p1++;
                   } else{
                       answer ++;
                       p1++;
                   }
               }
               return answer;
           }

퀴즈

45%나 틀려요. 한번 도전해보세요!

투 포인터 또는 슬라이딩 윈도우 기법이 중첩 반복문보다 효율적인 주된 이유는 무엇일까요?

더 적은 메모리를 사용해서일까요?

코드가 더 짧아져서일까요?

대부분의 경우 O(N) 시간 복잡도를 달성해서일까요?

입력 데이터 크기에 영향을 받지 않아서일까요?

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

차이가 없어보입니다.

김연수님의 프로필 이미지
김연수

작성한 질문수

질문하기