题目描述 通常,人们习惯将所有 \(n\) 位二进制串按照字典序排列,例如所有 \(2\) 位二进制串按字典序从小到大排列为:\(00,01,11,10\). 格雷码(\(Gray Code\))是一种特殊的 \(n\) 位二进制串排列法,它要求相邻的两个二进制串间恰好有一位不同,特别地,第一个串与最后一个串也算作相邻. 所有 \(2\) 位二进制串按格雷码排列的一个例子为:\(00\),\(01\),\(11\),\(10\). \(n\) 位格雷码不止一种,下面给出其中一种格雷码的生成算法: