【发布时间】:2020-08-08 23:41:59
【问题描述】:
正在阅读一本数据结构和算法的书,作者说算法或程序的时间复杂度几乎永远不会在各种编程语言之间发生变化。编程语言的什么时候或什么特性可能会导致这种罕见的实例在时间复杂度的大符号上发生变化?
【问题讨论】:
-
通常,如果您没有一种故意减慢处理速度的编程语言,那也没关系。此外,这取决于您如何实现算法。例如在函数式编程语言中,大多数数据是不可变的,但是使用像 fingertree 这样的数据结构来执行有效的“更新”。例如,带有 k 个磁带的图灵机最多只能运行 T(n)^2 个步骤:users.cs.duke.edu/~reif/courses/complectures/books/AB/…
标签: time-complexity big-o