C语言减治法a的n次方,分别用蛮力法、分治法、减治法实现a的N次方.doc

253b171540df25e1b84436cbe50dfc72.gif分别用蛮力法、分治法、减治法实现a的N次方.doc

算法设计与分析实验报告一学 号 姓 名 日 期 2012.11.5 得 分 一、实验内容分别用蛮力法、分治法、减治法实现an。二、实验要求 完成试验报告、给出对此结果。 为防止大数溢出,可以用1n来测试在n比较大是的三种算法运行情况。四、源程序及注释include iostreaminclude windows.husing namespace std;蛮力法求a的n次方int Power1int a,int n int as1; forint i0;in;i ans*a; return ans;分治法求a的n次方int Power2int a,int n int ans1; if n0 ans1;else ifn1 ansa; else ansPower2a,n/2*Power2a,n1/2; return ans;减治法求a的n次方int Power3int a,int n int ans1; if n0 ans1; else ifn1 ansa; else ansPower3a,n/2; ifn20 ansans*ans;当n为偶数 return ans;int mainint a1;int n10000;LARGE_INTEGER start1,end1,start2,end2,start3,end3,f;QueryPeranceFrequencyQueryPeranceCounterint p1Power1a,n;QueryPeranceCounterQueryPeranceCounterint p2Power2a,n;QueryPeranceCounterQueryPeranceCounterint p3Power3a,n;QueryPeranceCountercoutaa,nnendl;cout蛮力法求a的n次方运行时间(单位s)及结果endldoubleend1.QuadPart-start1.QuadPart/f.QuadPart p1endl;cout分治法求a的n次方运行时间(单位s)及结果endldoubleend2.QuadPart-start2.QuadPart/f.QuadPart p2endl;cout减治法求a的n次方运行时间(单位s)及结果endldoubleend3.QuadPart-start3.QuadPart/f.QuadPart p3endl;return 0;五、运行输出结果 六、调试和运行程序过程中产生的问题、采取的措施及获得的相关经验教训 合适的代码是实验能够成功进行的关键,当然前提是对问题的深刻理解,从实验结果我们不难看出,应用减治法处理问题的效率还是很高的。2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值