确定问题的时间复杂性(例如,降低 或上限) 输入:图表 输出:如果图形包含大小为100的Clique,则输出“yes”。 否则输出“否”。
确定此问题的时间复杂度较低
我认为时间复杂度是O(1)常数,因为clique具有固定的大小
此外,如果有人能帮助我找到一个确定决策问题的时间复杂性的良好资源,那将非常感激
答案 0 :(得分:1)
您的问题中有一些问题需要解决。我在这里的答案必须简短而非正式。要真正理解和欣赏计算复杂性,您必须研究这些材料。 Papadimitriou 's book on Computational Complexity是标准的书籍:Computational Complexity: A Modern Approach by Sanjeev Arora可能更适合入门。
计算复杂度通常根据输入的大小来衡量。对于K-Clique问题(“输入图是否包含大小为K的集团?”),在最坏的情况下,您必须查看整个图(或至少大部分图)以确定没有这样的集团。这意味着算法的运行时可能取决于图的大小(通常以图中的节点数n
来衡量)。非正式地,这意味着计算复杂性不能是常数,因为它依赖于输入的大小。
较低的复杂度界限是渐近下界,即,解决该问题的任何算法必须至少具有该计算复杂度。所以O(1)
实际上是一个正式的正确答案,尽管它没有提供太多价值。 紧的下界是仍然是下界的最高渐近界。
K-clique desicion问题是NP难的,因此不太可能存在针对该问题的多项式时间算法。您可以在this post on cs.stackexchange中找到有关良好上限的更多信息。
答案 1 :(得分:0)
对于常数k,复杂度实际上是O(n ^ k)的多项式。
来源:https://people.csail.mit.edu/virgi/combclique-ipl-g.pdf