算法
一只愤怒的香蕉
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
判断一个数是否为2的n次方
判断一个数是否为2的n次方,最简单的方法是利用位运算。 废话就不多说了,直接上代码吧,代码中有我的注释。 /** * 判断一个数是否是2 的n次方 * * 我们观察,2,4,8,。。的二进制有如下特点: * 10,100,1000。。。 * 将二进制数字减去1,就可以得到: * 01,010,0111.... * 那么就可以将该数字n与n-1做与运算,等于0 * 就可以判断该...原创 2019-05-27 22:35:32 · 531 阅读 · 1 评论 -
找出数组的最大值与最小值
找出数组的最大值与最小值 关于这个问题,网上有很多大神的解答,我也看了很多,但是我觉得我的方法最简单,思路如下: 只需要遍历数组一边,即时间复杂度为O(n),在遍历的同时找出最大值与最小值,缺点是比较的次数为2N次,但是代码非常简单,我觉得这就是优点,代码如下: /** * 找出数组的最大值和最小值 * * @Author lrf * @Date 2019/05/27 22:48...原创 2019-05-27 22:59:42 · 591 阅读 · 0 评论 -
找出最大子数组的和
找出最大子数组的和,其实这是个经典的问题,也就是说数组可以分为很多子数组,当然本身也是自己的子数组。看了很多大神的解法,什么暴力法,动态规划法,很多,但是代码量很多,也很难理解。根据我的理解,其实一个数组如果全都是大于0的数,那么,最大子数组的和就是本身各个元素的和,但是如果数组中有负数,那就有些麻烦。换个角度讲,其实也很简单,那就是将大于0的元素加起来不就ok了吗,那么时间复杂度为O(n),...原创 2019-05-27 23:17:33 · 366 阅读 · 0 评论
分享