if x:
for i in range(a):
for z in range(a):
for k in range(z):
for p in range(i):
c = (i * z) + (k * p)
else:
for i in range(a):
for z in range(a):
for k in range(z):
c = (i * z) + (k * p)
これはO(n^4)ですか?また、何回の乗算が起こるか?ネストループ内の乗算数:Big O
EDIT:コードを更新しました。また、下限は有効な入力が強制するステップの最大数をキャプチャするので、大きなオメガもn^4ではないでしょうか?
です。 Big-Oは上限を与えるので、上限は上限よりも多くのステップを取ることはできません。この上限を関数として表現するにはどうすればよいでしょうか?f(n)は上限に、f(n)はO(n^4)に属していますか? – slash