2

以下代码显示了最后一个 $input 的格雷码

function getGrayCode($n) {
    return $n ^ ($n >> 1);
 };

$input = 62;
$max = (1 << $input);
for( $i= $max- $input ; $i<$max; $i++) {
    printf("%s\n", decbin(getGrayCode($i)));   
}

上面的代码适用于 $input 值 62,但不适用于 rang 62 < $input <= 65。任何人都可以解决它吗?

4

0 回答 0