c++ 格雷码的生成

来源:互联网 发布:Windows 10 无线网络 编辑:程序博客网 时间:2024/06/05 20:14
#include<iostream>#include<string>#include<vector>#include<stdlib.h>#include<stdio.h>using namespace std;vector<string> a;vector<string> gc(int m,int N){    if(m==N)        return a;    else    {        int i=0;        int l=a.size()-1;        int j=a.size();        for(l,j;l>=0;--l,++j)        {            a.push_back(a[l]);            a[l]="0"+a[l];            a[j]="1"+a[j];        }        gc(m+1,N);    }    return a;}int main(){    a.push_back("0");    a.push_back("1");    gc(1,8);    cout<<a.size()<<endl;    for(int i=0;i<a.size();++i)        cout<<a[i]<<endl;    return 0;}
原创粉丝点击