我经常在这里谈论Big O,它衡量彼此之间的算法
这是否衡量时钟周期或空间需求。
如果人们想要对比基于内存使用的算法,他们会使用什么度量标准
发布于 2010-07-13 00:16:35
如果有人说“这个算法运行在O(n)时间内”,他说的是速度。如果有人说“这个算法在O(n)空间中运行”,他指的是内存。
如果他只是说“这个算法是O(n)",他通常是在谈论速度(尽管如果他在讨论内存时说了这句话,他可能是在谈论内存)。
如果你不确定别人说的是哪一个,去问他。
发布于 2010-07-13 00:13:56
简而言之:你有“大O在空间”和“大O在时间”。
长答案: Big O只是一个符号,你可以在任何你想要的上下文中使用它。
发布于 2010-07-13 00:14:13
大O只是一个数学工具,可以用来描述任何函数。通常人们用它来描述速度,但它也可以用来描述内存使用情况。
此外,当我们使用大O表示时间时,我们通常不直接谈论时钟周期。取而代之的是,我们计算“基本操作”(隐含地假设需要恒定的周期数)。
https://stackoverflow.com/questions/3230104
复制相似问题