博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
力扣算法题—050计算pow(x, n)
阅读量:6566 次
发布时间:2019-06-24

本文共 1100 字,大约阅读时间需要 3 分钟。

1 #include "000库函数.h" 2  3  4  5 //使用折半算法  牛逼算法 6 class Solution { 7 public: 8     double myPow(double x, int n) { 9         if (n == 0)return 1;10         double res = 1.0;11         for (int i = n; i != 0; i /= 2) {12             if (i % 2 != 0)13                 res *= x;14             x *= x;15         }16         return n > 0 ? res : 1 / res;17     }18 19 };20 21 22 //同样使用二分法,但是使用递归思想23 class Solution {24 public:25     double myPow(double x, int n) {26         if (n == 0)return 1;27         double res = myPow(x, n / 2);28         if (n % 2 == 0)return x * x;//是偶数,则对半乘了之后再两个大数相乘,x^n==(x^n/2)^229         if (n > 0) return res * res * x;30         return res * res / x;31     }32 };33 34 void T050() {35     Solution s;36     double x;37     int n;38     x = 0.0001;39     n = 2147483647;40     cout << s.myPow(x, n) << endl;41     x = 2.1;42     n = 3;43     cout << s.myPow(x, n) << endl;44     x = 2;45     n = -2;46     cout << s.myPow(x, n) << endl;47     x = 0.9;48     n = 2147483647;49     cout << s.myPow(x, n) << endl;50 51 52 }

 

转载于:https://www.cnblogs.com/zzw1024/p/10628666.html

你可能感兴趣的文章
C++后台服务如何高效实现多个定时器任务
查看>>
图例解析四大UML关系【转】
查看>>
函数实现不放在头文件的原因,及何时可以放头文件的情况【转】
查看>>
MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 的原因分析及解决方法
查看>>
关闭IE窗口
查看>>
MonoDB的数据准备
查看>>
tomcat和servlet关系
查看>>
深入理解java虚拟机,内存管理部分
查看>>
【转】一个lucene的官网例子
查看>>
Knockout2.x:ko.dataFor()、ko.contextFor()使用
查看>>
产品经理专业术语
查看>>
mysql常用语法
查看>>
HDU 1728 逃离迷宫(DFS经典题,比赛手残写废题)
查看>>
面向过程VS面向对象的理解
查看>>
iPhone中png图片格式处理(附:linux下alias命令详解)
查看>>
Iphone开发问题集
查看>>
php实现一致性hash算法
查看>>
docker使用命令
查看>>
VGA、DVI、HDMI、DP 接口介绍及优劣
查看>>
从19本书中选取五本,并且要求这五本互相不相邻,一共有多少种方法?
查看>>