
LeetCode算法题
weixin_43409365
这个作者很懒,什么都没留下…
展开
-
反向链表
现有链表:1 -> 2 -> 3 -> 4 -> 5->null要求得到以下链表:5 -> 4 -> 3 -> 2 ->1 -> null思路: 要把当前节点的Next指针指向它的前一个节点。需要两个指针记录,一个记录当前节点,还有一个记录前一个节点。def reverseList(self,head): cur, pr...原创 2019-06-12 15:50:56 · 424 阅读 · 0 评论 -
牛顿迭代法求sqrt(y)详解
给出一个数,然后求出这个数的平方根 --> 就是方程 y=x2 ,给y的值,求x。有两种方法:二分法,设下界l = 0,上界r=y,取中间值mid,mid = (l+r)/rif mid*mid == y: return mid # 找到了if mid*mid > y: # 说明取值偏大 r = mid # 把上界改成mid if mi...原创 2019-06-14 12:37:15 · 1105 阅读 · 0 评论 -
判断一个数是不是2的幂次方
比如2: 10 是2的幂次方再比如8: 1000 也是2的幂次方但是6 : 就不是2的幂次方法1:不断的 /2 如果能除尽就是2的幂次方def is_mi(x): i = x while x: x = x / 2 if x == 1: print(i, "是2的幂次方") break ...原创 2019-06-19 12:43:16 · 695 阅读 · 0 评论 -
求一个二进制数有几个1
法一:def count_bit(x): count = 0 le = len(bytes(x)[2:]) for i in range(le): res = x % 2 # print(res) if res == 1: count += 1 x = x >> 1 ...原创 2019-06-18 17:42:14 · 246 阅读 · 0 评论