혼자 인강으로 자료구조수업을 듣는 군인입니다.
솔직히 적는 저 자신도 이런 걸 왜 물어보고 있나 하는 생각이 들지만
해답을 얻고자 질문을 드립니다.
for
문이 다음과 같이 있다고 칩시다.
for( i = 1; i < n ; i ++ ) {
i = i + 1;
}
이럴 경우 저는 다음과 같이 생각했습니다.
i | 반복차수 | n |
---|---|---|
1 | 0 | 3 |
1+1 = 2 | 1 | 3 |
2+1 = 3 | 2 | 3 |
분명 여기서는 빅오가 O(n)
입니다만,
여기서 횟수가 3
이냐 2
냐가 헷갈립니다.
과연
for
문을 들어갈 때의i
를 초기화하는 과정까지 포함하여 반복횟수가3
인지,- 초기화 과정을 세지않고 반복문 횟수만 포함하여 총 반복횟수가
2
인지
궁금합니다.
네 다들 말씀하시겠지만
메인은 시간복잡도이지, 반복횟수가 아니다. 결국 빅오를 구하여 함수의 효율성을 계산하는 과정일 뿐이다.
네. 그냥 이런 게 궁금한 사람일뿐입니다. 이게 그렇게 되는 건지, 왜 그렇게 되는건지 이해가 안 되면 못 넘어가는 사람이라....하하..