• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

3번, 5번 시간복잡도

20.08.19 15:39 작성 조회수 186

1

3번 5번은 시간복잡도가 어떤건가요?

답변 2

·

답변을 작성해보세요.

0

wodms4525님의 프로필

wodms4525

질문자

2020.08.21

답변 감사합니다! 전부다 이해했습니다.

0

안녕하세요, wodms4525님 :)

3번 arr.slice()에서 slice()는 지정한 start 부터 end까지 복사하여 새로운 객체를 만드는 함수이며, 입력 데이터 크기와 배열의 길이에 따라 처리 시간이 달라지기 때문에 3번의 시간복잡도는 O(n)이 됩니다.

5번 arr.includes(5)에서 includes()는 배열이 특정 값을 포함하는지 확인하는 함수입니다.
배열 arr에 5가 포함되어 있는지 검사할 때 arr[0]부터 검사하고 최악의 경우는 배열의 마지막 원소까지 검사해야 합니다. 따라서 5번의 시간복잡도 역시 O(n)이 됩니다.

* O(1) : 입력 데이터에 상관없이 일정한 시간의 알고리즘. (상수 형태)

* O(n) : 입력 데이터의 크기와 배열의 길이에 비례한 시간이 걸리는 알고리즘. (선형)

혹시 답변이 충분하지 않거나 이해 되지 않는 부분이 있다면 답글 부탁드립니다.
감사합니다 :)