Quantum Algorithms With Applications To Simulating Physical Systems