だからこの質問を解決しようとイムループの入れ子になったとアルゴリズムの複雑さが、私と私の友人は少し私は外側のループがOであることを取得時間のif文と
for (Int64 i = 1; i < Math.Pow(2, n); i = 2*i)
{
if (i <= 4 || i >= Math.Pow(2, n - 2))
{
for (Int64 j = n; j >= 0; j = j - 2)
{
//constant number of C operations
}
}
else
{
for (Int64 j = n; j > 1; j = (Int64) Math.Ceiling((double) j/2))
{
//constant number of C operations
}
}
}
それによって混乱している(N)私は内側部分が何であるかを知ることができません、私はそれがちょうどO(n)であることを確信しています。 log n)。
これは正しい考えですか?または私は間違っています
ありがとう、それは私のためにそれをクリアした、私は内側のループの上部を追加する方法が行くだろうとは思わなかった、少なくとも私はほとんどそこにいた。 – Toxicable
ようこそ。ここで最も重要な点は、内側のループが外側のループのインデックスに依存しない場合にのみ、内側の複雑さを外側の複雑さで乗算する必要があるということです。それがそれに依存しているなら、あなたは何が起こっているかをもっと注意深く見なければなりません。 –