📌  相关文章
📜  检查一个数字是否有两个相邻的置位(1)

📅  最后修改于: 2023-12-03 14:55:43.367000             🧑  作者: Mango

检查一个数字是否有两个相邻的置位

当我们处理数字时,有时需要判断数字内部是否存在一些特殊的特征,比如数字是否有两个相邻的置位。本文将介绍如何检查一个数字是否有两个相邻的置位,并提供相应代码实现。

算法思路

我们可以将数字转化为二进制字符串,然后遍历字符串,判断相邻两位是否都为1。如果存在这样的情况,就返回True,否则返回False。

代码实现
def check_two_adjacent_bits(num):
    binary_str = bin(num)[2:]
    for i in range(len(binary_str)-1):
        if binary_str[i] == '1' and binary_str[i+1] == '1':
            return True
    return False
测试样例

我们编写了以下测试样例,验证程序的正确性。

assert check_two_adjacent_bits(7) == True
assert check_two_adjacent_bits(6) == False
assert check_two_adjacent_bits(15) == True
assert check_two_adjacent_bits(128) == False
总结

通过本文的介绍,我们了解到如何检查一个数字是否有两个相邻的置位。该算法思路简单易懂,代码实现也较为简单,可以方便地应用到实际的项目中。