If you are attempting to enter the arena of quantum computation, and perhaps need a primer before tackling Nielsen and Chuang's standard text, then I would certainly consider this book. It conveys many of the illusive elements of quantum computation in an extremely clear and concise manner. When I first was getting into quantum computing, this book served as a Rosetta stone for many of the concepts that were at first foreign to me.

Possessing a good knowledge of linear algebra, something that would be covered in a undergraduate course perhaps, is fairly important to ensure you get as much as you can out of reading this text. I've found this book to be an outstanding resource for learning many of the core concepts of quantum computation with an emphasis toward algorithm and circuit design.

The layout of the book is as follows:

1.) Introduction & Background:

Here we obtain a high level view of the basics of quantum computation. Specific attention is given to various formulations of the Mach-Zehnder interferometer and how individual photons behave within this device. This lays the framework for the computational aspects related to quantum theory, and also develops enables the reader to develop an intuition early on for some of the topics ahead in the book.

Preliminary concepts of computer science are also presented here with attention directed toward circuit diagrams, reversible computation, and matrix representations of computational gates.

2.) Linear Algebra and the Dirac Notation:

This section assumes the reader has a solid background in elementary linear algebra, and builds on top of those concepts. The Dirac notation formalism is presented and described incrementally with lots of good examples and explicit examples. One of the nice things about this book, is that it provides the reader with a

The book progresses to cover important linear algebraic concepts that are integral for comprehending the rest of the text. These include the spectral theorem, POVMs, tensor products, Schmidt decomposition, etc. Along the way, the authors provide examples (without the solutions unfortunately) to many problems to allow the reader to practice what they have read.

3.) Qubits and the Framework of Quantum Mechanics

This chapter provides a gentle introduction into the notion of what a qubit is, and how one can visualize it via the Bloch sphere. It also covers how such an entity evolves through time, and how systems consisting of more than one qubit behave. I especially thought steady incline from classical to quantum notions of bit via the Bloch sphere was particularly lucid.

This chapter also consists of the postulates of quantum mechanics presented in a computationally approachable manner. Some of the other mathematical necessities are also presented in this chapter, such as partial trace

4.) A Quantum Model of Computation

Here, the prior notions are brought together to consider how one may perform computation on these entities. For instance, the classical/quantum gate and circuit models are compared and contrasted.

5.) Superdense Coding and Quantum Teleportation

This chapter is fairly short, but delivers exactly what is says it will. The superdense protocol is conceptually introduced accompanied with an example. Following this is an explanation and application of quantum teleportation. The nice thing about this specific presentation is that a circuit model is pictorially represented for both protocols.

6.) Introductory Quantum Algorithms

Here the book considers some of the very well-known quantum algorithms in the literature. Specifically they cover, Deutsch's algorithm followed by the Deutsch-Jozsa and finally Simon's algorithm. This is a natural way that the majority of books approach presenting quantum algorithms since the difficulty level increases for each one.

I personally like the treatment of the Deutsch-Jozsa algorithm compared to many others I've seen in other textbooks on quantum computing. It's accompanied by considering specific cases of the algorithm, which really brings everything into perspective. It was especially helpful to me when I was just starting out.

7.) Algorithms with Superpolynomial Speed-up

For those especially interested in quantum algorithms, this chapter is of particular interest. They begin by providing the preliminary tools to approach this topic, quantum Fourier transform and quantum phase estimation, and proceed to a number of interesting algorithms. These range from eigenvalue estimation to the order-finding problem.

8.) Algorithms Based on Amplitude Amplification

The most famous quantum algorithm that manipulates amplitude amplification is Grover's algorithm, which is covered in this section. As one may assume from the title, the authors do go into more detail than most other accounts of Grover's algorithm on specifically how amplitude amplification plays a role in the algorithm.

General quantum searching algorithms along with quantum counting are also briefly covered in the last few sections of the chapter.

9.) Quantum Computation Complexity Theory and Lower Bounds

For those interested in the theoretical computer science aspects of quantum computing, this chapter serves as a very nice introduction. It is written in mind for someone who has had no prior exposure to such topics, and as a result introduces some of the notions of classical complexity theory before proceeding to the quantum case.

The remainder of the chapter provides a nice overview of where certain problems are to be found in various complexity classes. The chapter is relatively brief, and does not go into a great amount of detail for someone who is more interested on the theoretical side of quantum computing. The chapter is still a very nice overview and synopsis.

10.) Quantum Error Correction

The final chapter focuses on fault-tolerant quantum computation. The use and purpose of error-correcting codes are presented along with their quantum counterparts.

Appendices:

The appendices contain some further elaboration on the aforementioned topics such as ways to analyze probabilistic algorithms, distinguishing between two quantum states, etc.

Overall, this is an exceptional introductory book on quantum computation. Emphasis is again, toward quantum algorithms and quantum circuits. I'd certainly recommend this text to anyone who wants to gain insight into the world of quantum computation. It has also served as a terrific reference source and is still today one of the best texts on the subject.