test(int n) // 공간복잡도 1회
{
Int i;
Int total=1; // 대입연산 1회
for(i=2; i<n; i++;){ // n-1회 비교연산(for문 빠져나갈때도 비교 하므로), 덧셈연산 n-2회
total *= n; //total = total * n이니까
} // 대입연산 n-2회 , 곱셈연산 n-2회
return n;
}
실제 총 연산횟수 = 1+n-1+n-2+n-2+n-2 = 4n-6
맞아요?? 틀렸으면 설명좀.. 시간복잡도 Big-oh 표기할때도 이렇게 상세하게 다 계산해야되나요??
알고리즘 고수형님들 제발 알려주세용
알고싶어서 답답해죽겠음 ㅜㅜ
{
Int i;
Int total=1; // 대입연산 1회
for(i=2; i<n; i++;){ // n-1회 비교연산(for문 빠져나갈때도 비교 하므로), 덧셈연산 n-2회
total *= n; //total = total * n이니까
} // 대입연산 n-2회 , 곱셈연산 n-2회
return n;
}
실제 총 연산횟수 = 1+n-1+n-2+n-2+n-2 = 4n-6
맞아요?? 틀렸으면 설명좀.. 시간복잡도 Big-oh 표기할때도 이렇게 상세하게 다 계산해야되나요??
알고리즘 고수형님들 제발 알려주세용
알고싶어서 답답해죽겠음 ㅜㅜ
n이 작을때는 상세하게 다 계산해야하지만, n이 클수록 모쿠진상 말대로 다 지우고 O(n)하면 됨. n값이 전체의 대부분을 차지하기 때문에 생략해도 되는걸로 하는거임
감사합니다 형님들! 근데 저기 제가 계산한것은 맞게 한거에요??