我几天前参加了考试,今天教练给了我们考试的关键答案.
其中一个问题是
Run Code Online (Sandbox Code Playgroud)for ( j = 9; j >= 1; j-- )计算操作次数
结果是20.
谁能解释他是如何从中获得20次操作的?
Too*_*the 14
20个操作:
set j = 9
check if j(9) >= 1
set j to 8
check if j(8) >= 1
set j to 7
check if j(7) >= 1
set j to 6
check if j(6) >= 1
set j to 5
check if j(5) >= 1
set j to 4
check if j(4) >= 1
set j to 3
check if j(3) >= 1
set j to 2
check if j(2) >= 1
set j to 1
check if j(1)>=1
set j to 0
check if j(0)>=1
Run Code Online (Sandbox Code Playgroud)
for(j = n; j> = 0; j--)
好的,你从两个操作开始:
对于所有n <0,它停在那里.
如果n = 0,你得到一个aditional:
对于n = 1,你会得到另一组.
因此,对于n <0,操作次数为2,对于n> = 0,操作次数为2n + 4.
这些事情并不那么难.您只需要像计算机一样思考并仔细记录状态的任何变化(变量集).