算法a^b快速幂运算
a^b的运算在代码中容易超时,尤其是b特别大的时候,所以要用到快速幂运算,就是将循环的次数减少,不让代码运算的时候超时。
例如:7=111(二进制)
3的7次方本来要循环7次,现在只要循环三次。
换个更鲜明的例子3的次方,用原来的循环要运行次,<2^20,所以现在只要运行20次。因此这个算法的运行时间是log级别的,大大降低了原先运行的时间。
看到例题:
代码:
注意:数据的范围,容易超出范围。


还有一种和上面的幂运算类似:a*b运算 ,当b特别大的时候也会超时。所以我们这里也可以运用快速幂类似的方法。3*7可以转换成 3*1
3*2
3*4
这样也同样的减低了程序运行的时间,log级时间运算。
例题:

代码:


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/128852.html