热门问题
时间线
聊天
视角
有序阵列
来自维基百科,自由的百科全书
Remove ads
有序阵列是内容依一定顺序排列的阵列,是资料结构的一种。其顺序可能是依字母顺序、数字顺序或是其他顺序,在记忆体中会存放在连结位置。在计算机科学中常用有序阵列来实现查找表,其中有许多相同资料型态的资料。一般阵列可以透过排序变成有序阵列,常用在以一定方式组织资料,并且经常要查询的场合。
此条目没有列出任何参考或来源。 (2025年8月5日) |
简介
有序阵列是空间非常节省的资料结构,对于顺序储存的资料,访问局部性很好。
有序阵列里的元素可以用二分搜寻法来查询,时间复杂度O(log n),因此有序阵列适用于要快速查找资料的应合,例如集合(set)或多重集(multiset)。其查询的时间复杂度和平衡树相同。
有些资料结构中是用阵列实现。此时,可以用相同的排序方程用某键值,针对资料进行排序,例如依姓名或学号来排序学生资料等。
若是使用有序的动态数组,就可以插入元素或删除元素。有序阵列插入资料或删除资料的时间复杂度是O(n),因为需要移动所有在该元素之后的资料。而平衡树插入资料和删除资料的时间复杂度是O(log n)。若其要插入或删除的元素是在最后一个,有序阵列依平摊分析下的复杂度是O(1),而平衡树仍是O(log n)。
有序阵列中的资料可以随机存取,时间复杂度是O(1),像其他较复杂的资料结构,存取的时间复杂度是O(log n)或 O(n)。
Remove ads
历史
约翰·冯·诺伊曼在1945年写了第一个阵列排序程式(使用归并排序),当时第一个可以储存程式的电脑(EDVAC)仍在构建中[1][2]。
相关条目
参考资料
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads