Quantum Information and Algorithm