计算第n个格雷码的公式如下:
有人能解释一下上述公式是如何工作的,或者可能是它的推导过程吗?
(n-1) XOR (floor((n-1)/2))
(Source: wikipedia)
我对它进行了编码:
int gray(int n)
{
n--;
return n ^ (n >> 1);
}
有人能解释一下上述公式是如何工作的,或者可能是它的推导过程吗?