您的位置:首页 > 职场人生

用log(N)的解法实现数值的整数次方

2013-07-17 16:25 381 查看
//
//  main.m
//  c++test
//
//  Created by andyyang on 6/3/13.
//  Copyright (c) 2013 andyyang. All rights reserved.
//

//#import <Foundation/Foundation.h>
#include "stdio.h"
#include "string.h"

int power(double base,int exponent)
{
if(exponent==0)
{
return 1;
}
if(exponent==1)
{
return base;
}
if(exponent &0x01)
{
return power(base,exponent>>1)*power(base,exponent>>1)*base;
}else
{
return power(base,exponent>>1)*power(base,exponent>>1);
}
}
int main(int argc, const char * argv[])
{
double ret=power(12, 2);
printf("%f",ret);
getchar();
return 0;
}


充分利用位运算,高效低实现数值的整数次方
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息