We present the FQS (faster quick search) algorithm, an improved variation of the quick search algorithm. The quick search (QS) exact pattern matching algorithm and its variants are among the fastest practical matching algorithms today. The FQS algorithm computes a statistically expected shift value, which allows maximal shifts and a smaller number of comparisons between the pattern and the text. Compared to the state-of-the-art QS variants of exact pattern matching algorithms, the proposed FQS algorithm is the fastest when lΣl ≤ 128, where lΣl is the alphabet size. FQS also has a competitive running time when lΣl > 128. Running on three practical text files, E. coli (lΣl  = 4), Bible (lΣl  = 63) and World192 (lΣl  = 94), FQS resulted in the best performance in practice. Our FQS algorithm will have important applications in the domain of genomic database searching, involving DNA or RNA sequence databases with four symbols Σ = {A, C, G, T(/U)} or protein databases with lΣl = 20.
['Jie Lin', 'Donald A. Adjeroh', 'Yue Jiang']
A Faster Quick Search Algorithm