The speculative inquiry that computation could be done in general more efficiently by utilizing quantum effects was introduced by Richard Feynman Peter Shor described a polynomial time quantum algorithm for factoring integers by a quantum machine which proved the speculation true Quantum systems utilize exponential parallelism which cannot be done by classical computers However quantum decoherence poses a difficulty for measuring quantum states in modern quantum computers This paper elaborates on some basic concepts applied to quantum computing It first outlines these key concepts introduces the mathematics needed for understanding quantum computing and finally explores the Shor s Algorithm as it applies to both classical and quant...