当前位置: 首页 > news >正文

丹徒网站建设平台sem培训学校

丹徒网站建设平台,sem培训学校,网站详情页怎么做,h5网站建设功能计划表【剑指offer】JZ16:数值的整数次方题目描述解题思路题目描述 描述:实现函数 double Power(double base, int exponent),求base的exponent次方。 注意: 1.保证base和exponent不同时为0。 2.不得使用库函数,同时不需要…

【剑指offer】JZ16:数值的整数次方

    • 题目描述
    • 解题思路

题目描述

描述:实现函数 double Power(double base, int exponent),求base的exponent次方。

注意:
1.保证base和exponent不同时为0。
2.不得使用库函数,同时不需要考虑大数问题。
3.有特殊判题,不用考虑小数点后面0的位数。

数据范围: ∣base∣≤100 , ∣exponent∣≤100 ,保证最终结果一定满足 ∣val∣≤104

进阶:空间复杂度 O(1) ,时间复杂度 O(n) 。

输入:2.00000,3
返回值:8.00000
输入:2.10000,3
返回值:9.26100
输入:2.00000,-2
返回值:0.25000
说明:2的-2次方等于1/4=0.25

解题思路

数值的整数次方:最直观的想法是,求a的b次方,使用for循环直接循环b次。更快求数值的整数次方的方法是快速幂,其基本思想是:如果b是偶数,那么ab就分为ab/2×ab/2;如果b是奇数,那么ab就分为ab-1×a。举一个通俗易懂的例子,比如求55,则55=54×5,54=52×52,52=51×51。如果使用计算机来实现的话,可以使用二进制来判断,当指数大于0时进入循环,首先判断指数的最后一位是否为1,如果是则将其乘入结果,同时每次循环中还需要对底数进行自乘并将指数右移一位,为下次循环做准备。

double Power(double base, int exponent) 
{double result=1;bool flag=exponent>0?true:false;exponent=abs(exponent);while(exponent>0){if(exponent&1) //二进制最后一位是1result*=base;base*=base;exponent>>=1;}return flag==true?result:1.0/result;;
}
http://www.shuangfujiaoyu.com/news/61310.html

相关文章:

  • 做app还是做微网站好seo优化实训报告
  • 建设网站的要求吗发布软文
  • 根目录下两个网站怎么做域名解析重庆网站页面优化
  • 手机端wordpress怎么用优化营商环境个人心得体会
  • 要找人做公司网站应该怎么做宜昌seo
  • 做网站的zk啥网站开发怎么做
  • 如何建b2b网站百度推广怎么做
  • 织梦网站建设实验报告百度seo优化规则
  • 网站未授权cas要怎么做浙江企业网站建设
  • wordpress 网站死机网络销售怎么做才能做好
  • drupal 做的网站上海网络推广外包
  • 中小企业网站建设咨询宁波关键词优化企业网站建设
  • 免费个人博客网站迅雷磁力
  • 网站需求分析是在建站的什么阶段做的_为什么要做?制作网站
  • 深圳做分销网站2022百度seo优化工具
  • 网站项目申请百度客服电话24小时
  • 图片手机网站模板公司网站的作用
  • 做婚恋网站的开发百度网络推广怎么收费
  • 在家做任务赚钱网站sem 优化软件
  • 烟台做网站的公司google play官网下载
  • wordpress分类目录最简化404seo和sem是什么
  • 站长工具seo综合查询怎么用学前端去哪个培训机构
  • 万寿路网站建设创建网站花钱吗
  • 重庆百度网站快速排名最近发生的热点事件
  • 学做网站有前途吗seo内部优化包括哪些内容
  • 装饰公司怎样做网站平板电视seo优化关键词
  • app介绍类网站模板企业网站优化工具
  • 一个网站建设域名的构思如何获取网站的seo
  • 南京网站制作价格百度seo排名优化公司哪家强
  • 帆布网站做哪个百度指数手机版