Brian Kernighan 算法

本文探讨了Brian Kernighan算法,一种通过位运算高效地消除二进制表示中最左侧1的技巧。以示例m=11(二进制1011)说明,经过m&m-1运算后,m的二进制形式变为1010,再进行一次相同运算,最终得到1000。这种方法在计算机科学中常用于位操作和优化。
摘要由CSDN通过智能技术生成

Brian Kernighan 算法

对于一个正整数m来说,m&m-1的结果会将m的二进制最左边的1变成0
例如设m=11=1011则m-1=10=1010
n=m&m-1=1010 n-1=1001
n&n-1=1000

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值