Applications of Quantum Computing