如果我有一个功能:8x + 5y + 20z = n 我想使用穷举搜索来找到数字n的x,y,z的所有可能解。搜索x,y,z的可能范围分别是[0,n / 8] [0,n / 5]和[0,n / 20],如果我使用嵌套for循环,那么我的时间复杂度为O( n ^ 3/8 * 5 * 20)对吧?
我昨天很难介绍算法分析,有些人不会说简单的英语....
请提出一些建议
答案 0 :(得分:3)
您通常会以渐近符号省略常量...所以O(n ^ 3)。假设你只是在寻找整数解(对于给定的n),你的复杂性是正确的,假设你没有尝试任何太过花哨的东西来修剪搜索空间(即你检查整个间隔)。
答案 1 :(得分:1)
您可以通过设置一些条件来大幅降低计算时间: