形式陈述
势能法为数据结构状态
直觉
昂贵操作往往消耗先前积累的结构复杂度。势能把状态中尚未支付的未来工作量量化,使每步“真实成本加势能变化”保持平稳。
例子与边界
动态数组扩容时可令势与已占用容量和空闲量相关,使普通插入积累势、整表复制时释放势,从而得到
推论与应用
势能法分析动态数组、堆、并查集、伸展树和在线算法,能系统设计数据结构不变量并证明长操作序列的平均成本。
参考资料
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein, Introduction to Algorithms, 4th ed., MIT Press, 2022,Parts I–VI。
- Rajeev Motwani and Prabhakar Raghavan, Randomized Algorithms, Cambridge University Press, 1995,Chs. 1–7。