The area of quantum computation and quantum algorithms is developing very quickly. This book describes very carefully and understandably its foundations. The book is intended for a broad spectrum of possible readers from various fields (including physicists and engineers) and it requires only a modest knowledge (basic facts of linear algebra). More advanced topics (e.g. tensor products and spectral properties) are carefully reviewed. The authors treat in a systematic way the main topics in the field. This starts with a review of basic models of computation (going from classical to quantum). After a careful review of notions of linear algebra (and Dirac notation), they explain basic axioms of quantum mechanics and basic models for quantum computations. After a description of basic protocols for quantum information (superdense coding and quantum teleportation), they concentrate on quantum algorithms. They discuss many of these (including the Shor algorithm and the Gover quantum search algorithm). The last two chapters are devoted to quantum computation complexity theory and quantum error corrections. There are a lot of examples throughout the text and the treatment of all topics included in the book is very understandable, clear and systematic. There are no doubts that the book will be very useful for students from various branches of science.