# GESA library This library implements Generalized Enhanched Suffix Arrays (GESAs). ESAs (for single strings) are created using [sais-lite-lcp](https://github.com/kurpicz/sais-lite-lcp) (see [also](http://algo2.iti.kit.edu/english/1828.php)) [1]. In theory, any implementation for the construction of suffix arrays and the longest common prefix array (LCP) can be used. GESAs are constructed from ESAs using a generalization of the merging method from [2]. **NOTE** currently Algorithm 5.21 [2] is implemented with a worst-case O( n^2 ) complexity. We should implement Section 5.5.5 [2], which is based on [3]. ## References [1] J. Fischer. Inducing the LCP-Array. In F. Dehne, J. Iacono, and J. Sack, editors, *Algorithms and Data Structures: 12th International Symposium, WADS 2011, New York, USA, August 15-17, 2011. Proceedings*, pages 374-385. Springer, 2011. [2] E. Ohlebusch. *Bioinformatics Algorithms: Sequence Analysis, Genome Rearrangements, and Phylogenetic Reconstruction* Oldenbusch Verlag, 2013. [3] J.E. Jeon, H. Park and D.K. Kim. Efficient Construction of Generalized Suffix Arrays by Merging Suffix Arrays. *Journal of KIISE: Computer Systems and Theory*, 32(6):268-278, 2005.