「学习笔记」bitset

bitset 是一个储存 0/1 的容器,严格来说,并不属于 STL。
bitset 支持位运算,对于一些二进制的操作也可以支持,还可以将十进制数转化成二进制数,还可以统计二进制位上 1 的个数,对于像我这样的懒人,简直是二进制操作的神器,爱了爱了!O(∩_∩)O


主要介绍一些常用的函数

定义#

bitset 的定义需要给定容器大小

bitset<1000> b;

也可以直接将一个十进制数转化成二进制,在根据这个二进制来创建 bitset

bitset<32> s(ans) // 这里ans是一个int类型的数

运算符#

&、|、^ 二进制的运算符都可以用,但是要注意,bitset 只能与 bitset 进行运算,不能直接与整数进行运算,要先将整数转化为 bitset 才可以

函数#

b.count(): 返回 b1 的个数
b.set(): 将 b 中的元素全部设为 1
b.set(x, 1/0): 将 bx 位置的元素设为 1/0
b.reset(): 将 b 中的元素清空为 0
b.to_ulong(): 将 b 转化为 unsigned long 类型的数
b.all(): b 中全是 1 则返回 1
b.none(): b 中全是 0 则返回 1

作者:yifan0305

出处:https://www.cnblogs.com/yifan0305/p/17069298.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

转载时还请标明出处哟!

posted @   yi_fan0305  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
more_horiz
keyboard_arrow_up light_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示