ACM学习历程17——bitset位集合容器
来源:互联网 发布:如何禁用javascript 编辑:程序博客网 时间:2024/05/15 13:40
Bitset容器是用来存放bit位元素的,每个元素只占1bit位,取值为0或者1,因而比较节约存储空间,bitset提供了多种方法操作位容器,使用前添加<bitset>头文件即可使用。
(一)创建bitset对象:
bitset<1000> b,b为bitset对象,它能容纳1000个bit位,每个元素初值为0。
注:bitset的大小定义时必须确定,并且定义后也不能修改。
(二)设定元素的值:
(1)下标法,b[i],下标i的取值从0到n-1;
(2)b.set(),对b中全部元素设置为1;
(3)b.reset(),对b中全部元素设置为0;
(4)b.set(pos,值),等价于b[pos]=值;
(5)b.reset(pos),等价于b[pos]=0。
(三)输出元素:
(1)逐个输出,采用下标法:cout<<b[i]
(2)整体输出,即全部输出:cout<<b
#include<iostream>#include<bitset>using namespace std;int main(){bitset<50> b;cout<<b<<endl; b.set(10,1);cout<<b[10]<<endl;return 0;}bitset容器应用举例:10进制转2进制
#include<iostream>#include<bitset>using namespace std;int main(){bitset<100> b;int n;while(cin>>n){b.reset();int index=0;do{b.set(index++,n%2);n=n/2;}while(n!=0);for(int i=index-1;i>-1;i--)cout<<b[i];cout<<endl;}return 0;}
bitset位集合容器的其他方法如下,可查看相关的C/C++帮助手册:
0 0
- ACM学习历程17——bitset位集合容器
- ACM学习历程10——set集合容器
- ACM学习历程13——multimap集合容器
- Bitset位集合容器
- bitset位集合容器
- bitset 位容器集合
- ACM学习历程11——Multiset集合容器的使用
- ACM学习历程6——Vector向量容器
- ACM学习历程12——Map映照容器
- ACM学习历程18——stack堆栈容器
- C++STL之bitset位集合容器
- c++stl的bitset位集合容器
- ACM学习历程19——queue队列容器与priority_queue优先队列容器
- STL泛型编程-bitset位集合容器
- ACM学习历程9——string基本字符系列容器
- ACM学习历程14——deque双端队列容器
- ACM学习历程15——list双向链表容器
- ACM位运算&bitset总结
- Ensemble Learning入门
- int main(int argc,char *argv[])中参数的意义
- Controller object
- 点击选项卡刷新面板或者刷新操作树
- 析构函数
- ACM学习历程17——bitset位集合容器
- cocos2dx 3.x 导演、场景、层、精灵的认识
- css sprite
- Aphorisms
- 【NOIP 模拟题】最小生成树(Tarjan求桥)
- IC 设计流程
- sql server登录时出现错误233的解决办法
- 面试题
- jQuery AJAX传JSON数据使用小结