专栏名称: 开发者全社区
分享和推送Java/Android方向的技术和文章,让你成为这方面的大牛,让你每天都成长一点。同时,我们也会邀请BAT的大牛分享原创!
目录
相关文章推荐
开发者全社区  ·  字节员工:蚂蚁金服是开闸放水吗?认识好几个很 ... ·  10 小时前  
开发者全社区  ·  阿里员工:今天被主管谈话了,给我两个选择:主 ... ·  12 小时前  
开发者全社区  ·  蔚来多部门裁员,裁减10%-50%,20分钟完成 ·  2 天前  
开发者全社区  ·  小作文频出!某基金经理晕厥 ·  2 天前  
51好读  ›  专栏  ›  开发者全社区

算法趣谈—漫画:判断 2 的乘方-算法学习不再枯燥

开发者全社区  · 公众号  · android  · 2016-12-02 11:29

正文

来源:玻璃猫

链接:http://blog.jobbole.com/107689/

小灰陷入了回忆当中……

题目 :实现一个方法,判断一个正整数是否是2的乘方(比如16是2的4次方,返回True;18不是2的乘方,返回False)。要求性能尽可能高。

解法一:

创建一个中间变量Temp,初始值是1。然后进入一个循环,循环中每次让Temp和目标整数比较,如果相等,则说明目标整数是2的乘方;加小编微信:AMEPRE,如果不相等,则让Temp增大一倍,继续循环比较。当Temp大于目标整数时,说明目标整数不是2的乘方。

如果目标整数的大小是N,则此方法的时间复杂度是O(LogN)。







请到「今天看啥」查看全文