LeetCode: Gray Code

这种强烈找规律的题目基本面试面到就挂,看了网上答案

 1 class Solution {

 2 public:

 3     vector<int> grayCode(int n) {

 4         // Start typing your C/C++ solution below

 5         // DO NOT write int main() function

 6         vector<int> ret;

 7         int size = 1 << n;

 8         for(int i = 0; i < size; ++i)

 9            ret.push_back((i >> 1)^i);

10            return ret;

11     }

12 };

 C#

 1 public class Solution {

 2     public List<int> GrayCode(int n) {

 3         List<int> ans = new List<int>();

 4         int size = 1 << n;

 5         for (int i = 0; i < size; i++) {

 6             ans.Add((i >> 1) ^ i);

 7         }

 8         return ans;

 9     }

10 }
View Code

 

你可能感兴趣的:(LeetCode)