【算法题】格雷码
来源:互联网 发布:淘宝网店开店咋么进货 编辑:程序博客网 时间:2024/04/29 19:00
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。
给定一个整数n,请返回n位的格雷码,顺序为从0开始。
测试样例:
1
返回:[“0”,”1”]
class GrayCode {public: vector<string> getGray(int n) { if (n == 1) { vector<string> vec; vec.push_back("0"); vec.push_back("1"); return vec; } vector<string> vec = getGray(n - 1); auto vec_2 = vec; for (auto i = 0; i < vec.size(); ++i) { vec[i] = "0"+vec[i]; } for (auto i = 0; i < vec_2.size(); ++i) { vec_2[i] = "1"+vec_2[i]; } vec.insert(vec.end(),vec_2.rbegin(), vec_2.rend()); return vec; // write code here }};
阅读全文
0 0
- 【算法题】格雷码
- [算法]常见算法题
- 算法题/排序算法
- 格雷码算法
- 格雷码算法
- 算法题
- 算法题
- 算法题
- 算法题
- 算法题
- 算法题
- 算法题
- 算法题
- 算法题
- 算法题
- 《算法题》
- 算法题
- 算法题
- MySQL数据库中字段含逗号的数据,分隔成多条数据
- squid 反向代理 加上 负载均衡 (lvs net)
- 格雷码(多种方法含递归)
- BlockingQueue
- DemoB
- 【算法题】格雷码
- svn 提交失败
- es5.4中配置ik中文分词器
- php命名空间与自动加载
- Android半透明+RGB颜色代码大全
- 《算法图解》读书笔记
- Windriver生成cpci驱动程序知识点简单讲解
- GIT学习笔记
- replica分析