格雷码

xiaoxiao2021-02-28  138

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。

给定一个整数n,请返回n位的格雷码,顺序为从0开始。

测试样例:

1

返回:["0","1"]

vector<int> Gray_Create(int n){ vector<int> res; res.clear(); for(int i=0;i<(1<<n);i++){ res.push_back(i^(i>>1)); return res; } } n+1位格雷码的集合 = n位格雷码集合(顺序)加前缀0 + n位格雷码集合(逆序)加前缀1
转载请注明原文地址: https://www.6miu.com/read-2628399.html

最新回复(0)