bitset相关内容

C ++如何为std :: bitset参数分配输入值?

我想编写一个简单的程序,该程序将从输入中获取位数,并在输出中显示在给定位数上写入的二进制数(示例:我键入3:它显示000、001、010、011 ,100、101、110、111). 我遇到的唯一问题是在第二个 for 循环中,当我尝试在 bitset 中分配变量时,它想要常量数字. 如果您能帮助我找到解决方案,我将非常感激. 这是代码: #include ..
发布时间:2020-07-25 20:25:47 C/C++开发

使用位码

对于SO来说这有点麻烦,因为我不是在试图解决特定的问题,而是只是为了了解如何实现某些问题.但是我追求代码,所以让我们看看它如何运行... 假设我们在一周中的每一天都有一个复选框,并且我们决定将这些复选框的任何组合存储为单个数字,例如: 0 = no days 1 = Monday 2 = Tuesday 4 = Wednesday 8 = Thursday 16 ..
发布时间:2020-05-27 01:48:14 PHP

查找具有特定汉明重量的下一个数字

给定一个整数 x ,我想计算下一个 更高一个整数 y 汉明体重 w .请记住,x的汉明权重也必须是w. 因此,例如x = 10(1010)且w = 4,结果应为y = 15(1111). 很显然,我可以通过增加x来实现这一点,但这对于高数字来说是一个非常慢的解决方案.我可以通过某种方式的移位来实现吗? 解决方案 有以下三种情况:汉明权重(又称按位人口数)减少,不变或增加. ..
发布时间:2020-05-26 19:24:16 其他开发

在MongoDB中自动递增以存储唯一用户ID的序列

我正在制作一个分析系统,该API调用将提供一个唯一的用户ID,但顺序不正确且稀疏. 我需要给每个唯一用户ID一个自动增量ID,以在位阵列/位集中标记分析数据点.因此,第一个用户遇到的将对应于位数组的第一位,第二个用户遇到的将是位数组中的第二位,依此类推. 那么在MongoDB中是否有可靠且快速的方法来生成增量的唯一用户ID? 解决方案 可以,但不能 https://web.ar ..
发布时间:2020-05-10 21:56:35 其他开发

Java 32位系统BitSet的内存大小

如何在C ++中计算new BitSet(n) 的内存. 内存占用了new BitSet(1024) 在Java中. 但是Java的公式似乎有所不同.我想计算用于new BitSet(100000)的内存,请您帮忙? 解决方案 BitSet被打包到“单词"数组中.一个单词(在当前实现中)很长.内部的单个位将被检索/使用掩码进行设置;因此,它在内部将64位压缩为一个long值,并 ..
发布时间:2020-05-08 19:58:30 Java开发

如何在内存块上按位操作(C ++)

是否有比使用for循环更好(更快/更有效)的方法来对大内存块执行按位运算?在查看完选项后,我注意到std有一个成员std::bitset,并且还想知道将较大的内存区域转换为位集而不更改其值是否更好(甚至可能),然后执行操作,然后将其类型切换回正常状态? 编辑/更新:我认为union可能适用于此,以便为内存块分配int或其他内容的new数组,然后将其作为大的bitset进行操作.似乎可以根据此 ..
发布时间:2020-05-08 19:52:08 C/C++开发

C ++-生成具有可配置平均值"1s到0s"的随机位集的有效方法.比率

我正在寻找一种高效的方法来生成设定长度的随机std::bitset.我还希望能够影响结果中出现1的概率,因此,如果将概率值设置得足够低,则所有结果中只有一小部分甚至会包含1,但是仍然有可能(但极不可能)导致所有1.它将用于大量计算的应用程序,因此欢迎进行所有可能的优化. 解决方案 Bernoulli发行版是单个实验中1或0的概率分布.许多这样的分布式变量的总和 给出一个以均值 n * ..
发布时间:2020-05-06 11:07:32 C/C++开发

keyPressed事件在第一次重复时变慢

好的,对于这个非常奇怪的问题,我感到抱歉,但这让我发疯. 我通过以下方式处理WASD运动: Action ClassWASDKeyPressed = new ClassWASDKeyPressed(); Action ClassWASDKeyReleased = new ClassWASDKeyReleased(); BitKeys movementBitKeys = new BitK ..
发布时间:2020-04-26 09:13:27 Java开发

Java中的OR操作(BitSet.class)

如何编写程序 001010101110000100100 ...., 011100010001000011000 ...., 000000000010000000000100 ....作为输入(位),输出将是或这三个。 OR = 0 0 = 0, 0 1 = 1, 1 0 = 1, 1 1 = 1, 如果sombody有一个有用的示例程序。我们是否需要将值存储在位数组 ..
发布时间:2018-12-29 21:05:14 Java开发

BitSet的size()方法的原因是什么?

是否有 size() 方法。 html“> java.util.BitSet class? 我的意思是 - JavaDoc清楚地说它是依赖于实现,它以位为单位返回内部 long [] 存储的大小。从它所说的,可以得出结论,你将无法设置比 size()更高的索引,但这不是真的, BitSet 可以自动增长: BitSet myBitSet = new BitSet(); Syste ..
发布时间:2018-12-26 14:48:35 Java开发

Java BitSet线程对于并发只读操作是否安全

我的应用程序中有多个线程同时访问BitSet。 文档说: 如果没有外部同步,BitSet对于多线程使用是不安全的。 它没有说是不安全的阅读或写作。任何人都可以解释一下。 解决方案 A BitSet 只能安全阅读只有在初始化 BitSet 的最后一个操作与读取它的操作之间存在“之前发生”关系的操作。 实现这一目标的最简单方法是使用 final 。例如: public ..
发布时间:2018-12-21 20:46:57 Java开发

转移Java BitSet

我使用 java.util.BitSet 来存储密集的位向量。 我想要实现一个将位向右移1的操作,类似于>>> on int。 是否存在移位 BitSet s的库函数? 如果没有,是否有比下面更好的方法? public static void logicalRightShift(BitSet bs){ for(int i = 0;(i = bs。 nextSetBit( ..
发布时间:2018-12-11 00:00:39 Java开发