Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 嵌套循环执行_Algorithm_Loops_For Loop_Printing - Fatal编程技术网

Algorithm 嵌套循环执行

Algorithm 嵌套循环执行,algorithm,loops,for-loop,printing,Algorithm,Loops,For Loop,Printing,这是一个非常简单的问题,但出于某种原因,我感到困惑,这很烦人 def test(): for i from Lo1 to Hi1: for j from Lo2 to Hi2: body() body()将为以下对象执行多少次: Lo1=1,Hi1=n,Lo2=i-2,Hi2=i+2 答案是5n次,但我不知道他们是怎么得到的 Lo2=i-2,Hi2=i+2内环 所以(i-2)到(i+2)=5个备选方案例如:i-2,i-1,i,i+1,i+2 比如(-2)到(+2)=-2,-1,

这是一个非常简单的问题,但出于某种原因,我感到困惑,这很烦人

def test():
for i from Lo1 to Hi1:
    for j from Lo2 to Hi2:
    body()
body()将为以下对象执行多少次: Lo1=1,Hi1=n,Lo2=i-2,Hi2=i+2


答案是5n次,但我不知道他们是怎么得到的

Lo2=i-2,Hi2=i+2内环

所以(i-2)到(i+2)=5个备选方案
例如:i-2,i-1,i,i+1,i+2

比如(-2)到(+2)=-2,-1,0,1,2

Lo1=1,Hi1=n外环

1至N

So总计
内部*外部

5*N=5N


我认为最容易理解的方法是运行它

例如,对于
n=10
,以下java代码在每次迭代中打印
i
j
的值:

 for (int i=0; i<=10; i++){
     for (int j=i-2; j<=i+2; j++)
         System.out.println("i = " + i + ", j= " + j);
 }

您现在可以看到,对于
i
,有
10次
迭代,对于每个
i
,您有
j的
5次
迭代(从i-2到i+2)
。因此,总共
50(5*N)
次迭代。

假设Java代码有一个for循环

for(int i=3;i<=6;i++)
{
    //Statements to be executed
}

for(int i=3;i)你认为它会执行多少次?首先,j上的循环执行多少次?太简单了!我真的很喜欢这个修改步骤,它让事情变得很清楚。非常感谢!我会用正确的答案标记它/投票,但我没有足够的代表:(这太棒了,你是对的。一旦你实现了算法,这真的很容易。我现在知道发生了什么。我会投票给你的答案,但我不能=(哇,另一个很好的方式来看待它。一旦你向我解释了这个公式,这是非常明显的。谢谢你,我直到那时才知道,@aa1992我没有足够的尊重。
for(int i=3;i<=6;i++)
{
    //Statements to be executed
}