生成格雷码
来源:互联网 发布:易云数据vps 编辑:程序博客网 时间:2024/06/03 23:55
题目描述
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。
给定一个整数n,请返回n位的格雷码,顺序为从0开始。
IDEA
CODE
class GrayCode {public: vector<string> getGray(int n) { vector<string> res; if(n==1){ res.push_back("0"); res.push_back("1"); return res; } vector<string> tmp=getGray(n-1); int len=tmp.size(); for(int i=0;i<len;i++){ res.push_back("0"+tmp[i]); } for(int i=len-1;i>=0;i--){ res.push_back("1"+tmp[i]); } return res; }};//相邻两个数只有一位二进制数不同//递归的方法,n为格雷码是由n-1为格雷码得来,只需要在其高位补“0”或“1”即可,但是需要衔接n-1为格雷码的最后一个数,因此先顺序添加在逆序加添
0 0
- 生成格雷码
- 生成格雷码
- 生成格雷码
- 格雷码生成
- 生成格雷码
- 生成格雷码
- 生成格雷码
- 生成格雷码
- 生成格雷码
- 格雷码生成算法
- C++递归生成格雷码
- 格雷码的生成
- python生成格雷码
- 自动生成格雷码
- 格雷码生成策略
- 递归生成格雷码
- java实现格雷码生成
- 格雷码生成【grey code】
- 打印机常见问题!
- 4类抽奖算法总结
- Unity3D-UGUI的Text组件渐变效果
- bzoj 4455: [Zjoi2016]小星星 (容斥原理+DP)
- 【Java线程】Callable和Future
- 生成格雷码
- Python面试题整理
- FFmpeg编码基础流程
- java中几种创建对象的方式 五
- 工业4.0时代,机器人发展现状及技术趋势揭示
- c# dapper oracle like 参数话
- 数据统计相关(ORACLE)
- 时间选择插件 datePicker 精确到分
- 一起学爬虫 Node.js 爬虫篇(三)使用 PhantomJS 爬取动态页面