[leetCode] Gray Code
2013-03-19 11:21
260 查看
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
Its gray code sequence is:
when n=3:
000
001
011
010
110
111
101
100
所以 n=3的格雷码 = n=2的编码 + (1<<2+n=2的转置)
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
when n=3:
000
001
011
010
110
111
101
100
所以 n=3的格雷码 = n=2的编码 + (1<<2+n=2的转置)
class Solution { public: vector<int> grayCode(int n) { // Start typing your C/C++ solution below // DO NOT write int main() function vector<int> results; results.push_back(0); int tmp; for(int i=0;i<n;i++) { for(int j=results.size()-1;j>=0;j--) { tmp=results[j]+(1<<i); results.push_back(tmp); } } return results; } };
相关文章推荐
- LeetCode 89 Gray Code (Python详解及实现)
- LeetCode: Gray Code
- 开始刷leetcode day47:Gray Code
- LeetCode | Gray Code(格雷码)
- LeetCode--Gray Code
- 40_leetcode_Gray Code
- leetcode - Gray Code
- LeetCode题目 Gray Code 的解法与疑问
- [leetcode] Gray Code
- LeetCode 089 Gray Code
- LeetCode:Gray Code 题解
- leetcode89~Gray Code
- LeetCode Online Judge 题目C# 练习 - Gray Code
- leetcode 089 —— Gray Code
- [LeetCode]89. Gray Code
- LeetCode - Gray Code
- LeetCode——Gray Code
- leetcode:Gray Code
- 【Leetcode】Gray Code
- 【LeetCode】Gray Code