博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ACM的奇计淫巧_bitset优化
阅读量:6712 次
发布时间:2019-06-25

本文共 485 字,大约阅读时间需要 1 分钟。

 

什么是bitset

bitset 是STL库中的二进制容器,根据C++ reference 的说法,bitset可以看作bool数组,但优化了空间复杂度和时间复杂度,并且可以像整形一样按位与或。

使用方法

申明

bitset的申明要指明长度

bitset
bi

这样就申明了一个长度为length的名叫bi的bitset

 赋值

bitset重载了[]运算符,故可以像bool数组那样赋值

bi[2] = 1;

这样就能将第二位赋值为1

常用函数

b1 = b2 & b3;//按位与b1 = b2 | b3;//按位或b1 = b2 ^ b3;//按位异或b1 = ~b2;//按位补 b1 = b2 << 3;//移位
int one = b1.count();//统计1的个数

优化作用

常常碰到处理的数组只有0和1的变化,此时就可以使用bitset优化。比如求两个集合的交集可以使用按位与运算,求并集可以使用按位或运算

转载于:https://www.cnblogs.com/HarryGuo2012/p/4712245.html

你可能感兴趣的文章
AIX账户安全管理
查看>>
ARM流水线
查看>>
5015/5/5 谈谈http协议
查看>>
nagios安装部署
查看>>
java中重载与重写的区别
查看>>
Fix:方便快捷的Web开发平台
查看>>
IT管理员如何保证你的内网安全?
查看>>
交互原型画得丑?29个优秀UI/UX线框草图
查看>>
用U盘安装debian系统
查看>>
Mac 下得Jmeter 测试
查看>>
java基础之本地线程
查看>>
sqlserver2005 递归查询
查看>>
30天提升技术人的写作力-第十一天
查看>>
OSPF环境下帧中继的配置
查看>>
Python 17.4 使用Web框架
查看>>
马哥1-3
查看>>
spring容器
查看>>
Linux系统架构(LB-HA集群)-nginx负载均衡集群配置
查看>>
ios版塔防类游戏源码
查看>>
Backup Exec 2010 V-79-57344-65072
查看>>