当前位置:首页 > 行业动态 > 正文

php实现统计二进制中1的个数算法示例

在PHP中,我们可以使用内置函数decbin()将十进制数转换为二进制字符串,然后使用strlen()str_replace()函数统计二进制中1的个数。

以下是一个简单的示例:

<?php
function countOnes($num) {
    // 将数字转换为二进制字符串
    $binary = decbin($num);
    // 计算二进制字符串的长度
    $length = strlen($binary);
    // 使用str_replace函数替换所有的'0'为'',然后获取长度
    $ones = strlen(str_replace('0', '', $binary));
    return $ones;
}
// 测试函数
echo countOnes(7);  // 输出3
?> 

在这个例子中,我们首先定义了一个名为countOnes的函数,它接受一个参数$num,这个函数首先使用decbin()函数将输入的数字转换为二进制字符串,它使用strlen()函数计算这个二进制字符串的长度,它使用str_replace()函数将所有的’0’字符替换为”(空字符串),并返回结果字符串的长度,这就是二进制中1的个数。

0