C#程序在给定整数的二进制表示中找到最长连续1的长度
要获取连续的1,请使用按位左移运算符。这是我们的十进制数字。
i = (i & (i << 1));
循环上述操作,直到I的值为0,然后使用变量获取长度;在这里数。
while (i != 0) {
i = (i & (i << 1));
count++;
}我们在这里举的例子是150。
150的二进制文件是10010110。因此,我们有两个连续的二进制文件。
示例
using System;
class Demo {
private static int findConsecutive(int i) {
int count = 0;
while (i != 0) {
i = (i & (i < 1));
count++;
}
return count;
}
//驱动程式码
public static void Main() {
//二进制或150是10010110-
Console.WriteLine(findConsecutive(150));
}
}输出结果
2
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西