递归写出
举个例子 生成3位的格雷码
按一下步骤.
- 写出1位格雷码,即0、1
- 0
- 1
- 写出二位格雷码
- 翻转。将1位的格雷码沿x轴向下翻转复制,得到
- 0
- 1
- 1
- 0
- 添1或0。将其分为上下两半,上半部分的每一个格雷码前面添0,下半部分的每一个格雷码前面添1。得到二位格雷码
- 00
- 01
- 11
- 10
- 翻转。将1位的格雷码沿x轴向下翻转复制,得到
- 按照写二位格雷码时的做法,写出 三位格雷码
- 000
- 001
- 011
- 010
- 100
- 101
- 111
- 110
总结
- 先写出0和1
- 再不断执行翻转、 添1或0 两个操作,直到写出需要的位数的格雷码