Search code examples
stringsuffix-tree

What should I read to understand suffix trees?


I've come to understand that suffix trees are excellent and useful structures for a multitude of string related tasks, and I would like to learn more about them. Can anyone suggest a good starting point for UNDERSTANDING these things? That is, I don't need some ready made code or library that implements it, but maybe some tutorials that show how they are built, and what you can do with them. I enjoy "recreational programming", and suffix trees are high on my list of things to learn :)

PS: I prefer Delphi/pascal, but tutorials in any language are welcome.


Solution

  • Wikipedia is a great place to start. The Suffix Tree article has plenty of references and external links. The NIST page is kind of light. There is also an article from Dr. Dobb's Journal. In general, I'd recommend the Cormen / Leiserson / Rivest / Stein Algorithms book, but I don't have a copy handy so can't confirm that they actually cover Suffix Trees.