乘方--java递归实现--循环实现
来源:互联网 发布:p.b是什么意思网络用语 编辑:程序博客网 时间:2024/05/22 00:36
1.主程序
package recursion;//计算乘方public class Power {static long temp=1; //--------递归实现乘方计算,时间O(logN)---------
public long calculate(long x, int y) {if (y == 1) {return x * temp;}if (y == 2) {return (x * x * temp);}if (y % 2 == 1) {temp = x;}return calculate(x * x, y / 2);}// ------------递归实现乘方,时间O(N)------------------------public long calculate2(long x, int y) {if (y == 1) {return x;} elsereturn x * calculate2(x, y - 1);} //--------------循环实现乘方,时间O(N)------------------public long calculate3(long x, int y) {long result = 1;for (int i = 0; i < y; i++) {result = result * x;}return result;}}
2.测试程序
import recursion.Power;public class App {/** * @param args */public static void main(String[] args) {Power power = new Power();long result = power.calculate(5, 10);System.err.println(result);// ----------------------------result = power.calculate2(5, 10);System.err.println(result);// --------------------result = power.calculate3(5, 10);System.err.println(result);}}
3.测试结果
976562597656259765625
- 乘方--java递归实现--循环实现
- 递归三兄弟——数的乘方、背包问题、组合的Java实现
- 用递归的方法实现乘法和乘方
- java 递归实现循环比赛日程
- 用递归实现循环
- 循环实现递归
- 关于乘方的优化算法(java实现)
- java实现RSA大数乘方取模运算
- 递归&循环实现Fibonacci数列
- for循环/递归 实现九九乘法表
- JAVA使用循环和递归方法实现斐波拉切数列
- 递归与尾递归的循环实现
- 二分查找 递归实现 和 循环实现
- MFC 实现 加减乘除,括号,乘方的 计算器
- java 实现递归实现tree
- java递归算法实现
- java递归实现
- java递归算法实现
- Cookie记录用户名密码
- jquery 事件方法总结
- xfs、ext3、ext4和reiserFs的测试与对比
- smarty自定义函数
- Asp.net 随机生成数组最简单的解决方案
- 乘方--java递归实现--循环实现
- C++钩子(Hook)实现初探
- VS2008 多线程调试报错处理(ContextSwitchDeadlock )
- 愤怒的金刚评测:恶趣味的胜利
- Linux内核部件分析 更强的链表klist 本篇文章来源于 Linux公社网站(www.linuxidc.com) 原文链接:http://www.linuxidc.com/Linux/2011
- android中assets下隐藏的images目录
- CAD二次开发
- 网络爬虫原理
- C/C++:构建你自己的插件框架(1)