Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 减少或改进大O复杂性?_Algorithm_Complexity Theory - Fatal编程技术网

Algorithm 减少或改进大O复杂性?

Algorithm 减少或改进大O复杂性?,algorithm,complexity-theory,Algorithm,Complexity Theory,“我可以将复杂性从O(n^2)降低到O(n)”,但在算法分析中,降低意味着你可以将一个问题与另一个存在已知解决方案的问题进行对比。因此,我认为更正确的说法是“我可以将复杂性从O(n^2)提高到O(n)”。对吧? 如果我把复杂度从O(n^2)提高到O(n),这是正确的说法吗?我通过“一级复杂性”来提高复杂性?或者通过“一个或几个复杂度”?在回答第一段中的问题时,减少或改进都是可以接受的。如果你坚持认为减少必然意味着重铸问题,那么就坚持改进。就我个人而言,我不认为reduce必然意味着重铸一个问题,

“我可以将复杂性从O(n^2)降低到O(n)”,但在算法分析中,降低意味着你可以将一个问题与另一个存在已知解决方案的问题进行对比。因此,我认为更正确的说法是“我可以将复杂性从O(n^2)提高到O(n)”。对吧?


如果我把复杂度从O(n^2)提高到O(n),这是正确的说法吗?我通过“一级复杂性”来提高复杂性?或者通过“一个或几个复杂度”?

在回答第一段中的问题时,减少或改进都是可以接受的。如果你坚持认为减少必然意味着重铸问题,那么就坚持改进。就我个人而言,我不认为reduce必然意味着重铸一个问题,但在这些问题上我常常是错的

关于你在第二段中提出的问题,我认为“一阶复杂性”一词并没有很好的定义,因此你应该避免使用它。

没有“一阶复杂性”这样的说法,因为复杂性不仅仅是一个数字。从O(n^2)到O(n log^3 n)的变化称为什么?请尝试“n的因子”(类似地,“对数因子”)而不是“一阶复杂性”。