网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

数值的整数次方

题目描述:实现函数 double Power(double base, int exponent), 求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。

驻马店ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

分析:

有的面试者可能认为题目很简单,因此顺手就写下了如下代码:

double Power(double base, int exponent)
{
    double result = 1.0;
    for(int i = q; i <= exponent; ++i)
        result *= result;
        
        return result;
}

如果写出这样的代码,那么请面壁思过!

全面但不够高效的解法

数值的整数次方

数值的整数次方

bool g_InvalidInput = false;
double Power(double base, int exponent)
{
    g_InvalidInput = false;
 
    if(equal(base, 0.0) && exponent < 0)
    {
        g_InvalidInput = true;
        return 0.0;
    }
 
    unsigned int absExponent = (unsigned int)(exponent);
    if(exponent < 0)
        absExponent = (unsigned int)(-exponent);
 
    double result = PowerWithUnsignedExponent(base, absExponent);
    if(exponent < 0)
        result = 1.0 / result;
 
    return result;
}


double PowerWithUnsignedExponent(double base, unsigned int exponent)
{
    double result = 1.0;
    /
    for(int i = 1; i <= exponent; ++i)
        result *= base;
 
    return result;
}


bool equal(double num1, double num2)
{
    if((num1 - num2 > -0.0000001)
        && (num1 - num2 < 0.0000001))
        return true;
    else
        return false;
}

数值的整数次方

数值的整数次方

其实,上述解法已经比较全面了,但是如果遇到追求效率的面试官,则会提醒你还有更高效的方法。

数值的整数次方

数值的整数次方

这个公式很容易使用递归来实现

double PowerWithUnsignedExponent(double base, unsigned int exponent)
{
    if(exponent == 0)
        return 1;
    if(exponent == 1)
        return base;

    double result = PowerWithUnsignedExponent(base, exponent >> 1);
    result *= result;
    if((exponent & 0x1) == 1)
        result *= base;

    return result;
}

数值的整数次方

数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方数值的整数次方


网站名称:数值的整数次方
网站链接:http://bjjierui.cn/article/pojgho.html

其他资讯