# Quantum algorithm **Quantum algorithm** is an algorithm designed to run on a quantum computer, exploiting quantum phenomena such as superposition, entanglement, and interference to solve certain problems faster than any known classical algorithm. Quantum algorithms are expressed as sequences of quantum gates applied to a quantum register, followed by measurements. Not all problems are easier on a quantum computer. The best known quantum speedups are for specific structured problems: factoring integers ([[shor|Shor's algorithm]], exponential speedup), searching an unstructured database ([[grover|Grover's algorithm]], quadratic speedup), and simulating quantum systems. For general-purpose computation, quantum computers are not faster than classical ones. The power of quantum algorithms lies in identifying structure that quantum mechanics can exploit through interference. ## List of quantum algorithms - [[deutsch]] - [[deutsch-jozsa]] - [[qpe]] - [[qft]] - [[grover]] - [[shor]] - [[hsp]] - [[hhl]] - [[nisq]] - [[qaoa]] - [[vqe]]