初识位压缩

位压缩。所谓的位压缩就是用一个整数来保存几个事物的有无状态。我们知道每个整数对应一个二进制,二进制就是01串,而0对应的就是无,1对应有,这样几个事物的有无就可以确定一个二进制串,进而可以确定一个整数。故用整数保存几个事物的有无状态。假设已知一个整数m,要判断事物n(n是编号,从1开始)是否存在,可以进行&运算:m&1<<n-1,如果运算结果为0,则n不存在,如果运算结果非0,则n已存在。如果n不存在,要把n加入,可以进行 |  运算:m | 1<<n-1,可以用运算结果来记录这个新状态。

 

posted on 2013-10-07 15:57  天使是一个善良的神  阅读(377)  评论(0编辑  收藏  举报

导航