分治策略-递归(1)-求一个数的N次方

来源:互联网 发布:环境地质数据包括哪些 编辑:程序博客网 时间:2024/06/03 13:33
int numN(int a,int n){   if(n == 1)    return a;   if(n%2 == 0)   {   return numN(a,n/2) * numN(a,n/2);         }   else   {     return numN(a,(n-1)/2) * numN(a,(n-1)/2) * a;   }}


如上,求a的n次方,把这个大问题转化成分别求a的n/2次方然后在相乘,然后递归下去。要处理的就是n的奇偶判断。


递归结束的条件就是当n等于1的时候,return a的值然后开始合并所有子问题的解最后得出答案。

0 0
原创粉丝点击