首页 > 学院 > 开发设计 > 正文

89. Gray Code

2019-11-06 07:03:42
字体:
来源:转载
供稿:网友

典型回朔题。

class Solution {public: bool func(int k,vector<int>& visit,vector<int>& result,int n) { if(result.size()==visit.size()) return true; else { for(int i=0;i<n;i++) { int temp=k^(1<<i); if(visit[temp]==0) { visit[temp]=1; result.push_back(temp); if(func(temp,visit,result,n)) return true; visit[temp]=0; result.pop_back(); } } return false; } } vector<int> grayCode(int n) { vector<int> result; vector<int> visit(pow(2,n),0); visit[0]=1; result.push_back(0); func(0,visit,result,n); return result; }};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表