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

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

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

1주차 개념 #5-1. 문제로 연습하는 시간복잡도 Q3

1주차 문제로 연습하는 시간복잡도 Q3 질문 있습니다!

해결된 질문

작성

·

279

0

안녕하세요

go함수가 2n-1 번 호출된다는 것은 이해했습니다.

그런데 main함수에 보면 for문이 하나 더 있는데, 그럼 이 for문 내에서 n번 도는 거니 n + (2n-1) = 3n-1 이 되어야 하는 것 아닌가요?? 사실 빅오표기법에 의하면 둘다 O(n) 이어서 크게 중요하진 않을 수 있으나 혹여나 제가 잘못 이해한 부분이 있다면 바로잡고 싶어 질문드립니다!스크린샷 2024-01-20 203425.png

답변 1

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 영수님 ㅎㅎ

 

go함수가 2n-1 번 호출된다는 것은 이해했습니다.

그런데 main함수에 보면 for문이 하나 더 있는데, 그럼 이 for문 내에서 n번 도는 거니 n + (2n-1) = 3n-1 이 되어야 하는 것 아닌가요??

>> 네 영수님 말씀이 맞습니다.

다만... 보통은 입력은 필수적인 코드라고 보기 때문에 이부분을 시간복잡도 계산에 넣지는 않습니다. (하지만 넣는다고 해서 틀린 것은 아닙니다. for문이 필요하기 때문에)



또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


김영수님의 프로필 이미지
김영수
질문자

답변 감사합니다!

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

작성한 질문수

질문하기