链接: https://oj.leetcode.com/problems/gray-code/
格雷码 见维基百科 http://zh.wikipedia.org/wiki/%E6%A0%BC%E9%9B%B7%E7%A0%81
知道原理后就很简单了
class Solution { public: vector<int> grayCode(int n) { vector<int> ans; ans.push_back(0); for(int i=0;i<n;i++) { for(int j=0;j<1<<i;j++) { int t=ans[(1<<i)-j-1]; t|=1<<i; ans.push_back(t); } } return ans; } };