解题思路:假设n-1的序列为a,b,c,d,那么n的序列即为a,b,c,d,d+2^n,c+2^n,b+2^n,a+2^n。
class Solution { public: vector<int> grayCode(int n) { vector<int> ans; ans.push_back(0); int bias = 1; while (n--) { int k = ans.size(); while (k) ans.push_back(ans[--k] + bias); bias *= 2; } return ans; } };