fbpx
维基百科

后缀数组

计算机科学里, 后缀数组(英語:suffix array)是一个通过对字符串的所有后缀经过排序后得到的数组。此数据结构被运用于全文索引、数据压缩算法、以及生物信息学

后缀数组
类型 数组
发明者 Manber & Myers (1990)
时间复杂度(大O符号)
平均 最坏情况
空间
构建

后缀数组被烏迪·曼伯爾英语Udi Manber尤金·邁爾斯英语Eugene Myers于1990年提出,作为对后缀树的一种替代,更简单以及节省空间。它们也被Gaston Gonnet 于1987年獨立发現,并命名为「PAT数组」。

在2016年,李志泽,李建和霍红卫(页面存档备份,存于互联网档案馆)提出了第一个时间复杂度(线性时间)和空间复杂度(常数空间)都是最优的后缀数组构造算法,解决了该领域长达10年的open problem。

定义

令字符串  表示 的子字符串,下标从  

 的后缀数组 被定义为一个数组,内容是 的所有后缀经过字典排序后的起始下标。

对于所有的有: :  


例子

考虑字符串  =banana$:

i 1 2 3 4 5 6 7
  b a n a n a $

字符串的结尾是特殊字符$,用作特殊标志。该字符串有以下后缀:

后缀 i
banana$ 1
anana$ 2
nana$ 3
ana$ 4
na$ 5
a$ 6
$ 7

后缀经过升序排序后:

后缀 i
$ 7
a$ 6
ana$ 4
anana$ 2
banana$ 1
na$ 5
nana$ 3

后缀数组   包含这些后缀的起始位置:

i 1 2 3 4 5 6 7
  7 6 4 2 1 5 3

外部链接

后缀数组, 在计算机科学里, 英語, suffix, array, 是一个通过对字符串的所有后缀经过排序后得到的数组, 此数据结构被运用于全文索引, 数据压缩算法, 以及生物信息学, 类型, 数组发明者, manber, myers, 1990, 时间复杂度, 大o符号, 平均, 最坏情况空间, displaystyle, mathcal, displaystyle, mathcal, 构建, displaystyle, mathcal, displaystyle, mathcal, 被烏迪, 曼伯爾, 英语, m. 在计算机科学里 后缀数组 英語 suffix array 是一个通过对字符串的所有后缀经过排序后得到的数组 此数据结构被运用于全文索引 数据压缩算法 以及生物信息学 后缀数组类型 数组发明者 Manber amp Myers 1990 时间复杂度 大O符号 平均 最坏情况空间 O n displaystyle mathcal O n O n displaystyle mathcal O n 构建 O n displaystyle mathcal O n O n displaystyle mathcal O n 后缀数组被烏迪 曼伯爾 英语 Udi Manber 與尤金 邁爾斯 英语 Eugene Myers 于1990年提出 作为对后缀树的一种替代 更简单以及节省空间 它们也被Gaston Gonnet 于1987年獨立发現 并命名为 PAT数组 在2016年 李志泽 李建和霍红卫 页面存档备份 存于互联网档案馆 提出了第一个时间复杂度 线性时间 和空间复杂度 常数空间 都是最优的后缀数组构造算法 解决了该领域长达10年的open problem 定义 编辑令字符串S S 1 S 2 S n displaystyle S S 1 S 2 S n S i j displaystyle S i j 表示S displaystyle S 的子字符串 下标从i displaystyle i 到j displaystyle j S displaystyle S 的后缀数组A displaystyle A 被定义为一个数组 内容是S displaystyle S 的所有后缀经过字典排序后的起始下标 对于所有的有 1 lt i n displaystyle 1 lt i leq n S A i 1 n lt S A i n displaystyle S A i 1 n lt S A i n 例子 编辑考虑字符串 S displaystyle S banana i 1 2 3 4 5 6 7S i displaystyle S i b a n a n a 字符串的结尾是特殊字符 用作特殊标志 该字符串有以下后缀 后缀 ibanana 1anana 2nana 3ana 4na 5a 6 7后缀经过升序排序后 后缀 i 7a 6ana 4anana 2banana 1na 5nana 3后缀数组 A displaystyle A 包含这些后缀的起始位置 i 1 2 3 4 5 6 7A i displaystyle A i 7 6 4 2 1 5 3外部链接 编辑Java实现的后缀数组 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title 后缀数组 amp oldid 74715494, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。