Do I need special book to learn about string algorithms, or it will be enough to pick up a chapter from general books (e.g."Introduction to Algorithms")?
I prefer more code and less theory, and language doesn`t matter. It seems to me that many books on algorithms are outdated. Is it true?
views:
155answers:
6I found a few books on string algorithms online that you may want to browse through to see if they have what you need (see the Related books section on that page). I know that general books on algorithms like CLRS and Skiena have chapters on string algorithms, but they might only cover the most commonly needed algorithms. If you have a focused interest in on specific area, they might only get you started, without providing the depth you need.
In addition to general books on string algorithms, it's probably worth your while to look at bioinformatics algorithms that have to do with string matching, such as the Needleman-Wunsch global alignment algorithm and the Smith-Waterman local alignment algorithm, the latter of which has a much faster (though slightly less accurate) heuristic version called BLAST. I've modified BLAST to work on ASCII with good results; adapting it to work with a wchar_t
is left as an exercise for the reader, but shouldn't be too hard.
On the data-structures side of things, tries, directed acyclic word graphs and suffix trees are all incredibly useful things to have in your toolbox.
Thanks everybody for suggestions, I decided to get a background in other algorithms before learning string ones.
Absence of algorithms and data structures course at university is really hit in the back for me:(
If you want a not particulary academic but readable approach try Algorithms in a Nutshell