题目链接:https://leetcode-cn.com/problems/gray-code/
解法1:镜像反射
思路:分析题目
每次都根据$2^{n-1}$进行翻转,且在最高位补1.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| class Solution { public: vector<int> grayCode(int n) { int len=pow(2,n); vector<int> res(len,0); int i,j; int temp; for(i=1;i<=n;i++) { for(j=0;j<pow(2,i-1);j++) { temp=res[j]+pow(2,i-1); res[pow(2,i)-j-1]=temp; } } return res; } };
|