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

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.lqws.cn/news/126523.html

相关文章:

  • 第三篇:MCP协议深度实践——从理论到生产级AI智能体系统
  • 如何设计订单号生成策略?
  • Java基础原理与面试高频考点
  • Python网页数据抓取常用的库及方法介绍
  • 稻米分类和病害检测数据集(猫脸码客第237期)
  • 第八部分:阶段项目 6:构建 React 前端应用
  • LeetCode[513]找树左下角的值
  • postman自动化测试
  • JVMTI 在安卓逆向工程中的应用
  • 国际数字影像产业园智慧办公赋能文创企业加速成长​
  • PyTest框架学习
  • SARIMA时间序列分析:三大模型对比
  • Efficient RAW Image Deblurring with Adaptive Frequency Modulation
  • 代码训练LeetCode(21)跳跃游戏2
  • 数据分析之OLTP vs OLAP
  • [C++入门]简化的艺术---对模版的初步探索
  • powershell 安装 .netframework3.5
  • Linux基本指令(三)
  • 程一笑的AI梦何时醒?
  • Kafka深度技术解析:架构、原理与最佳实践
  • Spring Boot 从Socket 到Netty网络编程(上):SOCKET 基本开发(BIO)与改进(NIO)
  • 【dynamic-datasource】动态数据源切换失效的深度解析与解决方案
  • SQL进阶之旅 Day 14:数据透视与行列转换技巧
  • App 上线后还能加固吗?iOS 应用的动态安全补强方案实战分享(含 Ipa Guard 等工具组合)
  • 【Zephyr 系列 8】构建完整 BLE 产品架构:状态机 + AT 命令 + 双通道通信实战
  • 使用PyInstaller将Python脚本打包成可执行文件
  • AD四层板的层叠设计
  • 组件库二次封装——透传问题
  • ESP32S3 LVGL超大字体
  • 【八股消消乐】如何解决SQL线上死锁事故