算法设计与分析课件 10 快速幂.pptxVIP

  • 4
  • 0
  • 约小于1千字
  • 约 6页
  • 2026-06-10 发布于山东
  • 举报

算法设计与分析本节要点CONTENTS快速幂

快速幂实例(P1226):给你三个整数a、b、p,求abmodp。

快速幂设计递归函数三部曲:(1)函数名和参数定义递归函数名myPow,参数x、n,表示计算xn。(2)递归的结束条件考虑特殊情况:x0=1,x1=x,如果n=0返回1;n=1返回x。(3)自调用按照倍增思想,先求解y=myPow(x,n1,k),ans=y*y%k,如果n为奇数,则ans=ans*x%k。

快速幂需要特别注意:虽然本题数据均为整数,但是两个整数在乘法运算过程中会出现溢出,因此在乘法运算之前需要将乘数转换为longlong类型。

算法实现快速幂

算法分析时间复杂度:按照倍增思想,求解xn需要计算logn次,时间复杂度为O(logn)。空间复杂度:空间复杂度为O(logn)。快速幂

文档评论(0)

1亿VIP精品文档

相关文档