跳转至

Grover算法详解

简介

**Grover算法**是量子搜索算法,提供对无结构数据库的二次加速。

性能提升

Grover算法将搜索复杂度从 O(N) 降低到 O(√N)

算法原理

核心操作

  1. Oracle - 标记目标状态
  2. 扩散算子 - 反转关于平均值的操作
  3. Grover迭代 - 重复上述操作 √N 次

量子电路

|ψ⟩ ──H──■──H──■──H──...
         │      │
       Oracle   Diffusion

算法伪代码

procedure Grover(SearchSpace, Target):
    # 初始化
    |ψ⟩ = H|0⟩

    # Grover迭代
    for i in 1 to ⌊π/4√N⌋:
        # Oracle
        |ψ⟩ = Oracle|ψ⟩

        # 扩散
        |ψ⟩ = Diffusion|ψ⟩

    # 测量
    return measure(|ψ⟩)

应用场景

  • 数据库搜索
  • 优化问题
  • 机器学习

上一章: Shor算法详解 | 下一章: 量子复杂性理论