  Quantum computers use the quantum interference of different computational
paths to enhance correct outcomes and suppress erroneous outcomes of
computations. A common pattern underpinning quantum algorithms can be
identified when quantum computation is viewed as multi-particle interference.
We use this approach to review (and improve) some of the existing quantum
algorithms and to show how they are related to different instances of quantum
phase estimation. We provide an explicit algorithm for generating any
prescribed interference pattern with an arbitrary precision.
