宿題のために考えなければならなかったアルゴリズムのBigO表記を書き留める必要があります。
以下のコードはですO(n^2)
。なぜなら、すべてのxについて、すべてのyを通過する必要があり、世界が大きくなるにつれて遅くなるからです。
int[][] world = new world[20][20];
for (int x = 0; x < 20; x++)
{
for (int y = 0; y < 20; y++)
{
..
}
}
しかし、別の質問については、世界の下半分を通過する必要があるため、yループが半分になります。
int[][] world = new world[20][20];
for (int x = 0; x < 20; x++)
{
for (int y = 10; y < 20; y++)
{
..
}
}
上記のループにどのBigO表記が適切かはよくわかりませんが、それでもO(n^2)
、世界が大きくなるほど遅くなるためですか?それともO(log n)
、yが半分になっているからですか?