不用递归,写出快速求幂的程序
来源:互联网 发布:建筑三维计算软件 编辑:程序博客网 时间:2024/06/06 17:43
数据结构与算法分析——c语言描述 练习2.16 答案
把把次数n用二进制表示,而数组是1,2,4,8,。。。log2(n)次方,二进制为1的乘以相应下标的数组。
#include<stdio.h>#include<math.h>using namespace std;#define MAXN 1000int PowersOfXO[MAXN];int main() {int x, n, cnt, i;int ans = 1;scanf("%d %d", &x, &n);cnt = (int)log2(n);PowersOfXO[0] = x;for (i = 1; i <= cnt; i++){PowersOfXO[i] = PowersOfXO[i - 1] * PowersOfXO[i - 1];}i = 0;while (n > 0) {//将n转换为2进制,如果为1乘if (n % 2 == 1)ans *= PowersOfXO[i];i++;n /= 2;}printf("%d", ans);}
0 0
- 不用递归,写出快速求幂的程序
- 数据结构与算法分析 2.23 不用递归,写出快速求幂的程序
- 递归求快速幂
- 用栈写出Fibonacci的递归和不递归程序
- 如何快速写出递归函数
- 快速排序的递归程序
- 写出求1*3*...*n的递归式,并编写出递归函数求解
- 非递归快速求幂算法
- 如何写出一个较好的快速排序程序
- JavaScript 如何快速得写出递归函数
- 求幂的递归跟非递归
- 写出程序的关键
- 写出好的程序
- 一个快速法求素数的程序
- 快速幂非递归实现(即求x的n次方)
- 递归求幂的复杂度
- 憋了一天,最终写出来了的求最大公约数的程序(C)
- 字符串递归求长(不用任何其他变量,不用goto,不用循环)
- JAVA排序算法---归并排序
- QT 从尾部截取字符串(从路径中截取文件名)
- Github使用学习笔记(一)
- Android Thread子线程和主线程的UI交互
- 技术点整理
- 不用递归,写出快速求幂的程序
- Perl正则表达式总结_2
- Oracle的Merge into语法
- 集成第三方组件--Android 集成支付宝
- Android Environment类的接口详解
- Android Browser UserAgent设置及查看
- 移动端禁止放大标识
- 像素尺寸
- IOS 使用AF网络请求统一RSA加密+URL不识别中文的解决办法