刷题
文章平均质量分 63
小水水_
这个作者很懒,什么都没留下…
展开
-
牛顿迭代法——求根好手
何为牛顿迭代法,简单来说就是不断用 (x, f(x))的切线来逼近方程 的根。根号 a 实际上就是的一个正实根例如,我想求根号 2 等于多少。假如我猜测的结果为 4,虽然错的离谱,但你可以看到使用牛顿迭代法后这个值很快就趋近于根号 2了:( 4 + 2/ 4 ) / 2 = 2.25( 2.25 + 2/ 2.25 ) / 2 = 1.56944..( 1.56944..+ 2/1.56944..) / 2 = 1.42189..( 1.42189..+ 2/1.4...原创 2021-11-03 10:45:20 · 1024 阅读 · 0 评论 -
middle = left + ((right - left) / 2) 二分防止溢出
小水在刷题的时候看到一个题解其中有一句是 int middle = left + ((right - left) / 2);开始没看懂意欲何为,这是一道有关二分搜索的语句,此时我这里写的是int middle = (left + right) / 2;我小学二年级没学好,于是我不能反应出来是等价的,于是我证明了一下没错,非常巧妙,他们就是等价的 /doge他的目的就是 避免(left+right)的时候出现溢出原题如下:35. 搜索插入位置给定一个排序数组..原创 2021-11-02 15:29:49 · 1840 阅读 · 4 评论 -
Leetcode数据结构入门刷题小收获
前排提醒,点击题目链接快速跳转题目1.位运算231. 2 的幂给你一个整数n,请你判断该整数是否是 2 的幂次方。如果是,返回true;否则,返回false。如果存在一个整数x使得n == 2x,则认为n是 2 的幂次方。示例 1:输入:n = 1输出:true解释:20 = 1这题作为小白想到暴力的话,弄个 2 的幂次方表,用for循环?会超时。因为刚好是2的次方,所以很自然想到二进制,一个位的1就相当于2的某次幂,那么我们可以使...原创 2021-08-17 19:37:23 · 187 阅读 · 0 评论