首页 > 其他分享 >格雷码

格雷码

时间:2023-02-27 23:00:12浏览次数:34  
标签:格雷 二进制码 string gray binary size

1.求n位二进制格雷码中第k项

num^=(num/2);
    for(int i=1;i<=n;i++){
        a[i]=num%2;
        num/=2;
    }

 

2.二进制格雷码与二进制编码的转换

//二进制码转格雷码
string BinaryToGray(string binary)
{
	string gray(binary.size(), '0');
	//1、保留二进制码的最高位作为格雷码的最高位
	gray[0] = binary[0];
	//2、格雷码的其余位为二进制码对应位与其上一位相异或
	for (size_t i = 1; i < gray.size(); i++)
	{
		gray[i] = (binary[i - 1] - '0') ^ (binary[i] - '0') + '0';
	}
	return gray;
}

 

 

//格雷码转二进制码
string GrayToBinary(string gray)
{
	string binary(gray.size(), '0');
	//1、保留格雷码的最高位作为二进制码的最高位
	binary[0] = gray[0];
	//2、二进制码的其余位为格雷码对应位与二进制码上一位相异或
	for (size_t i = 1; i < gray.size(); i++)
	{
		binary[i] = (binary[i - 1] - '0') ^ (gray[i] - '0') + '0';
	}
	return binary;
}

  

3.超级格雷码

void dfs(int k,int t){
	if(k==n+1){
		for(int i=n;i>=1;i--){
			if(a[i]<10)cout<<a[i];
			else cout<<char(a[i]-10+'A');
		}
		cout<<'\n';
		return;
	}
	if(t==1){
		for(int i=B-1;i>=0;i--){
			a[k]=i;
			if(i%2==1)dfs(k+1,0);
			else dfs(k+1,1);
		}
	}else{
		for(int i=0;i<B;i++){
			a[k]=i;
			if(i%2==1)dfs(k+1,1);
			else dfs(k+1,0);
		}
	}
}

  

 

 

标签:格雷,二进制码,string,gray,binary,size
From: https://www.cnblogs.com/zhanghx-blogs/p/17162291.html

相关文章

  • 格雷编码
    题目描述n位格雷码序列 是一个由 2n 个整数组成的序列,其中:每个整数都在范围 [0,2n -1] 内(含 0 和 2n -1)第一个整数是 0一个整数在序列中出现......
  • <Verilog学习>Verilog设计参数化的译码器与编码器,以及设计4位格雷码计数器
    使用Quartus+modelsim完成设计目录1.参数化的译码器分析代码实现Testbench结果2.参数化的编码器分析代码Testbench结果3.4位格雷码计数器分析代码Testbench结果1.参......
  • 重磅直播|基于格雷码结合相移技术的高鲁棒性高效率动态三维面形测量
    主讲人对该领域的核心和主流技术进行了详解,干货满满,线下的答疑更是赢得了同学们的好评。本期由四川大学三维传感与机器视觉实验室博士生吴周杰分享,分享的主题为《基于格雷码......
  • #yyds干货盘点# 名企真题专题:生成格雷码
    1.简述:描述在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(GrayCode),请编写一个函数,使用递归的方法生成N位的格雷码。给定一个整数n,请返......
  • KPI和OKR 麦格雷戈 人性 X理论和Y理论
    什么是KPI?工作绩效考核,你不应该只知道KPI_腾讯新闻https://new.qq.com/rain/a/20210814A08ILS00对公司和员工的适用前面提到,两种衡量目标和绩效方式并无优劣之分,但适用......
  • 状态机编码方式:二进制binary、独热码 one-hot、格雷码 gray
    关于有限状态机中常用的三种编码方式各自的优缺点 二进制编码:优点:每次加一,编码方式简单;压缩编码,使用寄存器少缺点:翻转次数多,功耗大;易出现毛刺;状态跳转需要组合逻辑多;......
  • 格雷码
      [2019CSP-SDay1]提高组Day1题解(格雷码[模拟(k转二进制取反的做法带证明)]+括号树[DP]+树上的数(暴力+菊花图+单链))_ikrvxt的博客-CSDN博客 https://blog.csdn.......
  • 系列篇|结构光——格雷码解码方法
    格雷码是一种特殊的二进制码,在结构光三维视觉中,常常被用于编码。比起我们常见的二进制码,格雷码具有相邻数字的编码只有一位不同的优点,这个优点对于解码而言十分重要,可以减少......
  • 主元素问题与摩尔投票法、格雷码
    一堆小玩意,放到一起。题意:给定一个n个元素数列,保证有一个数\(a\)的出现次数超过\(\lfloor\fracn2\rfloor\),求这个数。数据范围\(n<=3000000,a_i\le2147483647,\)时限0.......
  • 89. 格雷编码
    难度中等536收藏分享切换为英文接收动态反馈n位格雷码序列 是一个由 2n 个整数组成的序列,其中:每个整数都在范围 [0,2n -1] 内(含 0 和 2n -1)第一个整数......