【发布时间】:2014-01-15 11:26:10
【问题描述】:
我想知道在mysql中使用“select * from TABLE where primary key=x”时的时间复杂度; 答案是 O(log(n)) 吗? (n为记录号)
【问题讨论】:
我想知道在mysql中使用“select * from TABLE where primary key=x”时的时间复杂度; 答案是 O(log(n)) 吗? (n为记录号)
【问题讨论】:
主键上有一个索引,通常是一个 b-tree。时间复杂度为 O(log(n)),其中“n”是表的大小。这是从页面中获取数据的额外获取。在实践中,数据获取可能比索引查找更昂贵。
但是,数据库中的性能要比这复杂得多。您必须处理多个级别的内存层次结构、不同的算法实现以及与网格计算相关的问题。
【讨论】: