이 수행되는 방법이 코드의 시간 복잡도는 무엇입니까?
Input: n (pos. Integer)
Output: y (pos. Integer)
Other: x, z (pos. Integer)
y := 0;
x :=0;
while x < n do
y := y + 1;
z := 0;
while z < 4 do
x := x + 1;
z := z + 1;
end;
for (i=0;i<2;i++){
x=x-1;
}
End;
을 시작? 나는 for 루프가있을 때 O (N)이고 잠시있을 때는 O (log N)임을 알고있다. 내가 도움 :
당신
I * think * 아직도 O (N)입니다. 왜냐하면 내부 루프는 항상 일정한 횟수의 루프를 반복하기 때문입니다. 모든 것을 근본적으로 변경하지 않고도 루프를 풀고 (각각 4 번과 2 번 반복 된 코드를 할당 문으로 대체 할 수 있음) 나는 잘못 될 수 있습니다 - 수십 년이 지났습니다. –
4 월 1 일인지 아닌지 확인했습니다. 이후 루프의 유형은 O (N)인지 O (log N)인지 여부와 거의 관련이 없습니다. 예, O (N)입니다. – Foon
또한 파스칼 틱과 c-ish 포맷/선언의 어떤 종류가 아닌 혼합은 의사 코드가 나타내는 것으로되어 있습니까? – Foon