• 大小: 1KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-01-10
  • 标签: 减治法  a的n次方  

资源简介

分别用蛮力法、分治法、减治法求a的n次方,并比较运行时间

资源截图

代码片段和文件信息

#include 
#include 
using namespace std;
//蛮力法求a的n次方
int Power1(int aint n)
{
int ans=1;
for(int i=0;i ans*=a;
return ans;
}
//分治法求a的n次方
int Power2(int aint n)
{
int ans=1;
if (n==0) ans=1;
else if(n==1) ans=a;
else
ans=Power2(an/2)*Power2(a(n+1)/2);
return ans;
}
//减治法求a的n次方
int Power3(int aint n)
{
int ans=1;
if (n==0) ans=1;
else if(n==1) ans=a;
else 
{
ans=Power3(an/2);
if(n%2==0)
ans=ans*ans;//当n为偶数
else 
ans=ans*ans*a;//当n为奇数
}
return ans;
}
int main()
{
int a=1;
int n=10000;
LARGE_INTEGER start1end1start2end2start3end3f;
QueryPerform

评论

共有 条评论

相关资源