x = x (x-1)
2024-05-20 18:08:57
判断一个数(x)的二进制含有几个1
int func(x) { int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx; }
假定x = 9999。 答案:8
思路:将x转化为2进制,看含有的1的个数。
判断一个数(x)是否是2的n次方
int func(int x) {if( (x&(x-1)) == 0 )return 1;elsereturn 0; }
注:
(1) 如果一个数是2的n次方,那么这个数用二进制表示时其最高位为1,其余位为0。
(2) == 优先级高于 &
转载于:https://www.cnblogs.com/nanqiang/p/9965015.html
最新文章
- RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分
- 虚方法、重写方法和抽象方法[转载]
- Java的List遍历
- Java文件读取 中文乱码
- cursor 的moveToFirst和moveToNext和moveToPrevious以及moveToLast
- 如何在 ASP.Net Core 中使用 Lamar
- 什么是数字光端机?数字光端机使用注意事项详解!
- java 负载均衡_java负载均衡 - 岁月静好I的个人空间 - OSCHINA - 中文开源技术交流社区...
- 无界面chrome + selenium爬虫
- 华为这款无线耳机斩获11项IFA大奖,11月正式上市
- rs422 波特率高错误_质量流量计的应用问题与常见错误代码的故障处理
- java 快逸报表_数据填报 | 快逸报表工具-Java报表软件
- java三大特性面试回答_面试题解3-Java的三大特征
- Matlab矩阵转置注意事项
- 内网穿透工具NatApp使用教程
- 苹果屏幕上的小圆点_官网新增2个内购软件 ! iOS 14上最值得使用的5个好功能,你都会了吗?...
- 电源纹波和电源噪声有什么区别?
- Python(4)print一个10行10列的星星图案
- 微信文章排版技巧和相关排版工具
- saas平台相关内容
热门文章
- __iter__ 和 __next__
- bzoj2427: [HAOI2010]软件安装
- js 调用C#.NET后台方法 转载自:http://www.cnblogs.com/lizhao/archive/2010/11/23/1990436.html...
- 我的第一个Windows Phone 7应用程序
- % %和ltscripte runat=server的区别
- SqlServer2012清除日志文件
- ubuntu自动登录tty1(shell,text)配置
- 软件开发项目进度控制浅谈
- Oracle中验证非空的函数NVL(),NVL2()总结
- python推荐淘宝物美价廉商品 2.0