Abstract
The prefix table of a string is one of the most fundamental data structures of algorithms on strings: it determines the longest factor at each position of the string that matches a prefix of the string. It can be computed in time linear with respect to the size of the string, and hence it can be used efficiently for locating patterns or for regularity searching in strings. A weighted string is a string in which a set of letters may occur at each position with respective occurrence probabilities. Weighted strings, also known as position weight matrices or uncertain strings, naturally arise in many biological contexts; for example, they provide a method to realise approximation among occurrences of the same DNA segment. In this article, given a weighted string x of length n and a constant cumulative weight threshold 1 / z , defined as the minimal probability of occurrence of factors in x, we present an O ( n ) -time algorithm for computing the prefix table of x. Furthermore, we outline a number of applications of this result for solving various problems on non-standard strings, and present some preliminary experimental results.
Original language | English |
---|---|
Pages (from-to) | 160 - 172 |
Journal | Theoretical Computer Science |
Volume | 656, Part B |
Early online date | 30 Apr 2016 |
DOIs | |
Publication status | Published - 2016 |
Keywords
- algorithms on strings
- weighted strings
- uncertain sequences