一个DFS最简单的入门小程序

一个DFS最简单的入门小程序

原创链接:http://www.wutianqi.com/?p=1162


上次论坛里一个会员问的。
感觉这个程序作为DFS入门是很理想的,大家应该都能看懂。
贴出来和大家分享:

 

 1 #include < iostream >
 2 using   namespace  std;
 3 int  a[ 100 =   {0} ;
 4 int  n;
 5 int  count = 0
 6 void  dfs( int  k)
 7 {
 8   if(k >= n)
 9   {
10      for(int i = 0;i < n;i++)
11      {
12         cout<<a[i]<<" ";
13      }

14      count++;
15      cout<<endl;
16   }
     
17   else
18   {
19      for(int i = 1;i <= n;i++)
20      {
21         a[k] = i; 
22         dfs(k + 1);        
23      }
       
24   }
    
25}

26 int  main()
27 {
28   while(cin>>n)
29   {
30      count=0;
31      int k = 0;
32      dfs(k);  
33      cout<<count<<endl;             
34   }
    
35}

你可能感兴趣的:(一个DFS最简单的入门小程序)