Quantum Walk Algorithm