【数据结构与算法分析】2.3 求X的N次幂
来源:互联网 发布:python 卷积 编辑:程序博客网 时间:2024/06/07 03:10
问题描述:
这还描述啥
解决思路:
递归,递推,以及logn的解法,第三种解法中,若n为偶数,x*n = x*(n/2)*x*(n/2);若n为奇数,x*n=x*(n/2)*x*(n/2)*x;
算法实现:
#include<stdio.h>double recursion(double x, int n);double recurrence(double x, int n);double logn(double x, int n);int main() { double x; int n; while(scanf("%lf%d",&x,&n)){ printf("%lf\n",recursion(x,n)); printf("%lf\n",recurrence(x,n)); printf("%lf\n",logn(x,n)); } return 0;}double recursion(double x,int n) { if(n == 0) return 1; if(n == 1) return x; return recursion(x,n-1)*x;}double recurrence(double x,int n) { if(n == 0) return 1; if(n == 1) return x; int i; int result = x; for(i = 2;i<=n;i++){ result = result * x; } return result;}double logn(double x,int n) { if(n == 0) return 1; if(n == 1) return x; if(n % 2 == 0) return logn(x*x,n/2); else return logn(x*x,n/2)*x;}
0 0
- 【数据结构与算法分析】2.3 求X的N次幂
- 求x的n次幂算法Pow(x, n)
- 求x的n次幂
- x的n次幂
- x的n次幂
- x的n次幂
- x^n次幂
- 3-39(fun 函数求x的n次幂)
- 求四的N次幂
- x的n次幂递归求解
- Lintcode x的n次幂
- lintcode--x的n次幂
- LintCode:M-x的n次幂
- [LintCode]428.x的n次幂
- lintcode-分治-x的n次幂
- x的n次幂-LintCode
- lintcode x的n次幂
- noj1016_求R的n次幂(0.0<r<99.999,0<n<=25) 分析与C++代码
- 八数码的八重境界
- 20151116 密码文件
- CSS定位的兼容性问题
- [TwistedFate]UIActionSheet
- [Err] 1222 - The used SELECT statements have a different number of columns
- 【数据结构与算法分析】2.3 求X的N次幂
- Clustering by Passing Messages Between Data Points
- java正则表达式
- KMP算法
- Gradle学习
- C#学习第三天
- 最新FreeRtos(版本8.0)上手指南
- python BeautifulSoup 正则匹配糗事百科并保存到本地
- pragma pack(非常有用的字节对齐用法说明)