小编JMa*_*ues的帖子

独占或N位集之间

我正在使用BitSets在Java中实现一个程序,我陷入了以下操作:

如果所有BitSet中有超过1个,则N BitSet返回BitSet为0,否则返回1

举个例子,假设我们有这3套:

  • 10010
  • 01011
  • 00111

  • 11100预期结果

对于以下几组:

  • 10010
  • 01011
  • 00111
  • 10100
  • 00101

  • 01000预期结果

我试图通过逐位操作来完成这个操作,并且我已经意识到我需要的是字面上的所有集合或者所有集合之间,但不是以迭代的方式,所以我很难接受该做什么.这甚至可能吗?

我想避免昂贵的解决方案,必须检查每组中的每个位,并为每个位置保留一个计数器......

谢谢你的帮助

编辑:有些人问,这是我正在研究的项目的一部分.我正在构建一个时间表生成器,基本上一个软约束是没有学生在1天内只有1个课程,所以这些集合代表每个小时的参加学生,我想过滤那些只有1个班级的学生.

java string bit-manipulation bitset

5
推荐指数
1
解决办法
380
查看次数

标签 统计

bit-manipulation ×1

bitset ×1

java ×1

string ×1