我的老师告诉我,基本上每当我们有一个循环和一个嵌套循环时,操作数如下 n(n+1)/2。
但是,我查看了一些程序,我意识到这不太可能。
for(i=0, i<n, n++)
for(j=i, j<n, j++)
{x=i+j}
在这种情况下,它将是 n(n+1)/2,忽略 i=0、j=0、n++、j++ 和 x=i+j,但这里:
for(i=0, i<n, n++)
for(j=0, j<n, j++)
{x=i+j}
除非我弄错了,否则它将是 n^n。
有人能准确告诉我两个循环何时有 n(n+1)/2 次操作吗?我现在有点困惑。