码迷,mamicode.com
首页 > 其他好文 > 详细

二进制集合枚举子集

时间:2018-03-11 14:42:57      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:blog   down   markdown   枚举   忽略   ++   span   集合   amp   

枚举一个二进制集合的子集,可以看做原集合忽略0之后不断-1
就有了这样一种算法:

    for (int i = s; i; i = (i - 1) &s)

i - 1使得末尾的0全部变成1,但是由于&s,原来是0的位无论如何也不会变成1,但是原来是1的位就形成了不断-1的模式

二进制集合枚举子集

标签:blog   down   markdown   枚举   忽略   ++   span   集合   amp   

原文地址:https://www.cnblogs.com/Mychael/p/8543793.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!