递归方法产生格雷码

来源:互联网 发布:淘宝卖教程侵权吗 编辑:程序博客网 时间:2024/04/29 11:47
#include<cstdio>#include<iostream>#include<cstring>using namespace std ;const int maxn = 110 ;int n ;int a[maxn] ;void show(){     for(int i = 1;i <= n;i++){          printf("%d%c" , a[i] , i == n ?'\n':' ') ;     }}void dfs(int pos){    if(pos == 0){        show() ;        return  ;    }    dfs(pos-1) ;    a[pos] = !a[pos]  ;    dfs(pos-1) ;}int main(){    while(~scanf("%d" , &n)){        memset(a , 0 , sizeof(a)) ;        dfs(n) ;    }}

0 0
原创粉丝点击