Brief Introduction to Suffix Array

转载 2012年05月28日 18:45:28

Brief Introduction to Suffix Array

Last Modified: 2000-11-14 (Since: 2000-11-14)


Suffix array is a data structure designed for efficient searching of a large text. The data structure is simply an array containing all the pointers to the text suffixes sorted in lexicographical (alphabetical) order. Each suffix is a string starting at a certain poinsition in the text and ending at the end of the text. Searching a text can be performed by binary search using the suffix array.

Let's get started with the suffix array construction. Suppose that we have the sample text ``abracadabra'' and wish to construct the suffix array for the sample text.

First, we should assign index points to the sample text. Index points specify positions where search can be performed. In our example, index points are assigned character by character. Thus, we can search the sample text with the suffix array at any positions later.

Second, we should sort the index points according to thier corresponding suffixes. The correspondance between the index points and the suffixes looks like

After sorting:

Finally, The resulting index points become the suffix array for the sample text.

Search of the sample text can be performed by binary search using the created suffix array. The following figure shows the process of searching the sample text for `ra'. Numbered arrows shows the order of processing.

References


相关文章推荐

简要介绍JAVA8中的函数式编程;Brief Introduction to Functional Programming in Java 8

Brief Introduction to Functional Programming in Java 8 Klaus78, 28 Feb 2016 CPOL ...

A Brief Introduction to Hibernate for .NET with A Simple Example

To continue the topic of why Java still there since the advent of .NET 2.0; Recently as required by ...
  • quanben
  • quanben
  • 2011年07月05日 21:21
  • 710

(转)深入潜出RESTFUL--A Brief Introduction To Restful

原文地址 : 深入浅出REST 英文原文地址 : A Brief Introduction To Restful不知你是否意识到,围绕着什么才是实现异构的应用到应用通信的“正确”方式,一场争论正进行...

A Brief Introduction to Scala

  • 2013年01月15日 16:55
  • 823KB
  • 下载

Tyvj 1860 后缀数组 [Suffix Array 裸题]

一句话,输出文本串的sa数组和height数组要注意细节!!! 注意rank下标 0~lens-1 ;而 sa下标 1~lens ;height下标为2~lens 所以带入da() 时 lens要...

Brief Introduction to OpenMP

  • 2010年10月15日 16:11
  • 228KB
  • 下载

Brief introduction into Materialized Views

Brief introduction into Materialized ViewsThis week, I am teaching an Oracle Database 11g Data Wareh...

A brief introduction to DES

  • 2010年05月03日 10:32
  • 18KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Brief Introduction to Suffix Array
举报原因:
原因补充:

(最多只允许输入30个字)