Edited sentence: Algorithms based on quantum walks can provide an exponential speedup over any classical algorithm for some oracular problems.Efficient quantum algorithms are known for certain non-Abelian groups.Grover's algorithm searches an unstructured database (or an unordered list) with N entries, for a marked entry, using only  queries instead of the  queries required classically.However, no efficient algorithms are known for the symmetric group (which would give an efficient algorithm for graph isomorphism) and the dihedral group (which would solve certain lattice problems).It solves the problem of counting the number of marked entries in an unordered list.Quantum algorithms can be grouped together by the main techniques used by the algorithm.Quantum algorithms may also be grouped by the type of problem solved: algebraic, number-theoretic, combinatorial, etc.Quantum counting solves a generalization of the the search problem.Quantum walks also give polynomial speedups over classical algorithms for many practical problems, such as the element distinctness problem, the triangle finding problem, and evaluating NAND trees.Shor's algorithm solves the discrete logarithm problem and the integer factorization problem in polynomial time, whereas the best classical algorithms take superpolynomial time.Some commonly used techniques/ideas in quantum algorithms: phase kick-back, phase estimation, the quantum Fourier transform, quantum walks, amplitude amplification.The hidden subgroup problem is a generalization of many problems, such as factoring, graph isomorphism and certain lattice problems.There are efficient quantum algorithms for the Abelian hidden subgroup problem