除了两个以外的其他基础是否存在格雷码?

Did*_*set 4 math gray-code

只是好奇心问题,格雷码是否定义为基数2以外的基数?

我试着计算基数3,写连续值,注意一次只改变一个trit.我已经能够枚举最多26(3**3-1)的所有值,它似乎工作.

        000              122              200
        001              121              201
        002              120              202
        012              110              212
        011              111              211
        010              112              210
        020              102              220
        021              101              221
        022              100              222
Run Code Online (Sandbox Code Playgroud)

我能看到的唯一问题是,当循环回零时,所有三个trits都会改变.但这只适用于奇数基数.当使用偶数基数循环回零时,只会改变一个数字,如二进制.

我甚至猜测它可以扩展到其他基数,甚至十进制.这可能导致在十点基数计数时的另一个排序...... :-)

    0  1  2  3  4  5  6  7  8  9 19 18 17 16 15 14 13 12 11 10
   20 21 22 23 24 25 26 27 28 29 39 38 37 36 35 34 33 32 31 30
Run Code Online (Sandbox Code Playgroud)

现在的问题是,有没有人听说过它?有申请吗?或者它只是数学上的狂热?

aio*_*obe 10

是.看看维基百科上的格雷码文章.它有一个关于n-ary格雷码的部分.

除二进制反射格雷码之外,还有许多特殊类型的格雷码.一种这样的格雷码是n元格雷码,也称为非布尔格雷码.顾名思义,这种类型的格雷码在其编码中使用非布尔值.