Har*_*hay 9 algorithm performance time-complexity
只是想知道在一个问题中是否有关于算法的运行时间的讨论,它是否与时间复杂性相同或两者之间有什么区别?
Ste*_*sop 13
运行时间是程序运行所需的时间.时间复杂度是对运行时间的渐近行为的描述,因为输入大小趋于无穷大.
你可以说运行时间"是"O(n ^ 2)或其他什么,因为这是描述复杂性类和大O符号的惯用方法.实际上,运行时间不是复杂性类,它可以是持续时间,也可以是给出持续时间的函数."作为O(n ^ 2)"是该函数的数学性质,而不是它的完整表征.确切的运行时间可能是2036*n ^ 2 + 17453*n + 18464个CPU周期,或者其他什么.并不是说你经常需要在那么多细节上知道它,并且无论如何它很可能取决于实际输入以及输入的大小.
分析算法就是确定执行该算法所需的资源量(例如时间和存储)。大多数算法都设计用于处理任意长度的输入。通常efficiency or running time of an algorithm
被表示为将输入长度与 或 存储位置相关的函数number of steps (time complexity)
(空间复杂度)。