首页 > 其他 > 详细

会计法

时间:2020-06-21 15:41:58      阅读:67      评论:0      收藏:0      [点我收藏+]

会计法介绍

为每个操作类型分配一个平摊代价,保证在整个操作序列中平摊代价始终大于实际代价

设计思路:

需要结合数据结构的特点算法的规律灵活设计

【栈操作】

  • 问题定义:初始为空的栈进行push,pop,multipop操作的代价分析
  • 设计思路:

由操作的代价规律 : push >= pop+multipop

则 2*push的代价 > 总代价

  • 分析:

实际代价

技术分享图片

 

      平摊代价

                技术分享图片

 

设计的平摊代价满足会计法的要求,则总代价O(2n),平摊代价O(2)

【二进制计数器】

  • 问题定义:初始为0的k位二进制计数器代价分析
  • 设计思路:

对于任何一个数位,0 ~> 1 的次数总大于等于 1~>0 的次数

  • 分析:

设 0 ~>1的平摊代价为2,1~>0的平摊代价为0

设计的平摊代价满足会计法的要求,则总代价O(2n),平摊代价O(2)

 

会计法

原文:https://www.cnblogs.com/duanshuai/p/13172588.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!