当前位置: 首页 > article >正文

01串(二进制串)与集合之间存在天然的对应关系 ← bitset

【集合的二进制表示‌】
● 01 串(二进制串)与集合之间存在天然的对应关系。对应机理为
每个二进制位可以表示集合中一个元素的存在(1)或不存在(0)。例如,集合 {a, b, c} 的子集 {a, c} 可以表示为 101(假设顺序为 a、b、c),全集表示为 111,空集表示为 000。

● 集合的二进制表示是一种非常直观且高效的方式,尤其适用于有限集合的子集枚举或状态压缩。

● 
一个长度为 n 的二进制串可以表示 2^n 个子集。例如:n=3 时,有 000、001、010、011、100、101、110、111 共8个子集。

【集合运算与位运算】
交集‌ → a & b(按位与)
‌并集‌ → a | b(按位或)
对称差集‌ → a ^ b(按位异或)
差集‌ → a & (~b)

bitset 与集合的关系】
bitset‌ 是一种固定大小的二进制位容器,每个位表示集合中元素的存在(1)或不存在(0)。

#include <bits/stdc++.h>
using namespace std;int main() {bitset<8> setA("11001100"); //{2,3,6,7}bitset<8> setB("10101010"); //{1,3,5,7}cout<<(setA & setB)<<endl; //10001000cout<<(setA | setB)<<endl; //11101110cout<<(setA ^ setB)<<endl; //01100110cout<<(setA & ~setB)<<endl; //01000100return 0;
}


 

http://www.lryc.cn/news/2399463.html

相关文章:

  • 153页PPT麦肯锡咨询流程管理及企业五年发展布局构想与路径规划
  • [特殊字符] 革命性AI提示词优化平台正式开源!
  • 我的概要设计模板(以图书管理系统为例)
  • 【使用】【经验】docker 清理未使用的镜像的命令
  • DrissionPage爬虫包实战分享
  • iptables实战案例
  • 机器学习与深度学习07-随机森林01
  • 回归分析-非线性回归及岭回归.docx
  • Google AI 模式下的SEO革命:生成式搜索优化(GEO)与未来营销策略
  • docker创建postgreSql带多个init的sql
  • 掌握 MotionLayout:交互动画开发
  • SpringBoot中缓存@Cacheable出错
  • iOS UIActivityViewController 组头处理
  • 分布式电源接入配电网的自适应电流保护系统设计与实现
  • 鸿蒙版Taro 搭建开发环境
  • 论对生产力决定生产关系的批判:突破决定论的桎梏
  • ESOP交易系统搭建全景指南:从合规基石到价值跃迁
  • GICv3电源管理
  • 《TCP/IP 详解 卷1:协议》第3章:链路层
  • centos 9/ubuntu 一次性的定时关机
  • Elasticsearch从安装到实战、kibana安装以及自定义IK分词器/集成整合SpringBoot详细的教程(二)
  • Java自动类型转换的妙用
  • 数据库管理-第333期 Oracle 23ai:RAC打补丁完全不用停机(20250604)
  • 【DAY39】图像数据与显存
  • AI代码库问答引擎Folda-Scan
  • Kafka深度技术解析:架构、原理与最佳实践
  • 基于cnn的通用图像分类项目
  • Kotlin-协程
  • pycharm 左右箭头 最近编辑
  • Linux环境管道通信介绍