首页 > 解决方案 > 算法复杂度,3 个循环

问题描述

非常简单的问题,但我有点不确定,刚刚进入 Big O。如果这只是 3 个循环,它只是 N^3,但是有恒定的循环和 n-1 的循环,这让人困惑一点点。在这种情况下,复杂性如何变化?

算法:

for i=1 to 10 
    do for j=1 to n-1
        do for k=1 to 8

标签: algorithmtime-complexitybig-ocomplexity-theory

解决方案


恒定循环确实改变了复杂性。考虑这一点的方法是根据内部循环中执行的操作总数。在您的示例中,它是10 * (n - 1) * 8操作。简化后得到80 * n - 80,在大 O 表示法中显然只是 O(n)。


推荐阅读