What is this book good for? Imagine you are a computer scientist working in the bioinformatics area. P- bably you will be a member of a highly interdisciplinary team consisting of biologists, chemists, mathematicians, computer scientists ranging from p- grammers to algorithm engineers, and eventually people from various further ?elds. A major problem within such interdisciplinary teams is always to ?nd some common language, and, for each member of some discipline, to have profound knowledge of what are the notions, basic concepts and goals of the other participating disciplines, as well as of what they can contribute to the solutionofonesownproblems. Thisdoes,ofcourse,notmeanthatacomputer scientist should do the job of the biologist. Nevertheless, a computer scientist should be able to understand what a biologist deals with. On the other hand, the biologist should not do the computer scientists job, but should know what computer science and algorithm engineering might contribute to thesolution of her/his problems, and also how problems should be stated in order for the computer scientist to understand them. This book primarily aims to show the potential that algorithm engin- ring o?ers for the solution of core bioinformatics problems.