gpt4 book ai didi

c# - 计算二进制数中 1 的运行次数/集合

转载 作者:行者123 更新时间:2023-11-30 19:38:24 25 4
gpt4 key购买 nike

我想借助按位运算符计算二进制序列中 1 的运行次数。

我搜索过类似的主题,但找到的答案与我正在寻找的不同。汉明权重也不同,因为它计算二进制中 1 的数量。

例如,如果我有二进制 001101011101,我应该有 4 个 1,因为它们是 1 的集合/组除以它们之间的 0。

我知道如何在 C# 中使用按位运算符,但我真的无法在一个程序中一起使用它们。

最佳答案

如果你有二进制数的字符串表示,那么你只需要在“0”处拆分字符串:

var binaryString = "0011011101110001";

var count = binaryString
.Split(new [] { '0' }, StringSplitOptions.RemoveEmptyEntries)
.Count();

如果您的数字存储在 int 中,那么转换为字符串很简单:

int value = 12345;
var binaryString = Convert.ToString(value, 2);

关于c# - 计算二进制数中 1 的运行次数/集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32976388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com