摘要: 二分查找,不过查找过程中的判断条件更细一些,比如会判断mid以及mid+1的正确性,贴代码 class Solution { public: int mySqrt(int x) { if(x == 0) return 0; if(x == 1) return 1; long long x_temp 阅读全文
posted @ 2021-09-03 20:44 zhaohhhh 阅读(88) 评论(0) 推荐(0)
摘要: 快速幂算法,真的牛皮,幂不断除以2取整,如果当前为偶数,则返回当前幂一半的值的数,再平方,若是奇数,那再乘上1个x好了,递归代码如下 class Solution { public: double generate(double x,int n) { if(!n) return 1; double 阅读全文
posted @ 2021-09-03 19:37 zhaohhhh 阅读(56) 评论(0) 推荐(0)
摘要: 其实就是进制转换,第一个方法是递归,用迭代也是差不多的,贴一下递归的代码 class Solution { public: int generate(string& str,int& num_temp) { if(!str.length()) return num_temp; num_temp = 阅读全文
posted @ 2021-09-03 17:36 zhaohhhh 阅读(35) 评论(0) 推荐(0)
摘要: 又是一个数学问题,并且最关键的方面还是归纳出题目的思路。对于这一题而言,在数的尾部出现0,出现了2*5这一组合,第一个思路就是把阶乘看成很多个数的因子相乘的过程,然后计算2和5的个数,这种思路可以继续优化,基于2的个数远大于5这一事实,我们只计算5的个数同样可以完成问题。之后需要解决的则是类似与25 阅读全文
posted @ 2021-09-03 15:33 zhaohhhh 阅读(33) 评论(0) 推荐(0)