alogorithms练习

c7rzv4ha  于 2021-06-27  发布在  Java
关注(0)|答案(1)|浏览(281)

这个问题在这里已经有答案了

大o,你是怎么计算/近似的(23个答案)
三天前关门了。
我想知道这个算法的复杂度,我在符号上有点困惑。

for(int i=0; i<N; ++i) 
    for(int j=M-1; j>=i; --j) 
        ++x

答案是:
O(min(N,M)) O(N*M) O(N+M) O(max(N,M))

new9mtju

new9mtju1#

简而言之:o(nm)
说明:首先,不管发生什么,外循环都要执行n次。内循环在第一次迭代中将执行m次,在第二次迭代中将执行m-1次,依此类推。这是一个算术级数,其和为d
(a1+an)/2,即1(m+1)/2,即o(m)。把o(n)和o(m)相乘得到o(n*m)。

相关问题