Gray Code
来源:互联网 发布:一人能做好淘宝网店吗 编辑:程序博客网 时间:2024/05/07 01:08
题目描述
The gray code is a binary numeral system where two successive values differ in only one bit.
Given a non-negative integer n representing the total number of bits in the code, print the sequence of gray code. A gray code sequence must begin with 0.
For example, given n = 2, return [0,1,3,2]. Its gray code sequence is:
00 - 0
01 - 1
11 - 3
10 - 2
分析:根据格林码的规则递归即可。
代码:
vector<int> grayCode(int n) { vector<int> s; if(n==0) { s.push_back(0); return s; } if(n==1) { s.push_back(0); s.push_back(1); return s; } if(n>=2){ s=grayCode(n-1); int len=s.size(); int mi=(int)pow(2,n-1); for(int i=0;i<len;i++){ s.push_back(mi+s[len-i-1]); } return s; } }
阅读全文
0 0
- Gray Code
- Gray Code
- gray code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- Gray Code
- 设计风格-现代简约
- AJAX解析XML(JS代码)
- 303. Range Sum Query
- JavaScript实现点击按钮直接打印
- POJ2723 Get Luffy Out
- Gray Code
- hdu2036 求多边形面积(向量叉乘)
- httpd
- 一个平凡的工作日
- vue-router 报错"Uncaught SyntaxError: Unexpected token }"
- Java层热修复框架实践
- bzoj2101[Usaco2010 Dec]Treasure Chest 藏宝箱 DP
- 从Mac/OS和iOS开放源码浅谈UNIX家谱
- HTML5应用之文件拖拽上传