深度优先搜索dfs之1到n的全排列
2017-04-20 16:03
281 查看
/******** *给你一个数n,输出1到n的全排列 *深度优先搜索 ********/ #include <stdio.h> #include <stdlib.h> int book[10], a[10], n; void dfs(int step) { int i; if(step == n+1)//当你在第n+1步的时候,说明前n部已经排好了。 { for(i = 1; i <= n; i++) printf("%d ", a[i]); printf("\n"); return ;//返回之前的一步; } for(i = 1; i <= n; i++)//按照1,2,3.。。的方式一一尝试。 { if(book[i]==0)//判断扑克牌i是不是还在手里 { a[step]=i;//将i牌放在第step个盒子里。 book[i]=1;//表示扑克牌不再第step个盒子里 dfs(step+1);//继续下一步。 book[i]=0;//将刚才尝试的扑克收回,才能进行下一步的尝试。 } } return ;//结束搜索。 } int main() { while(~scanf("%d", &n)) dfs(1); return 0; }
相关文章推荐
- 深度优先搜索dfs之1到n的全排列(收藏)
- DFS--深度优先搜索--图的邻接矩阵
- 图论(五)深度优先搜索DFS
- 深度优先搜索 DFS(邻接矩阵表示)
- 深度优先搜索DFS和广度优先搜索BFS的总结
- DFS深度优先搜索
- DFS深度优先搜索之lake counting
- 深度优先搜索DFS详解(百练2815 城堡问题)
- nyoj 部分和问题(深度优先搜索DFS)
- 深度优先搜索的代码框架(DFS)
- dfs深度优先搜索 1~N 的排列理解dfs,抽象为n个数放n个盒子
- 深度优先搜索DFS例题--棋盘问题题解(参考写的)
- 深度优先搜索DFS(邻接表实现)
- SDUT-3469 深度优先搜索练习之神奇的矩环(暴力/DFS)
- DFS 深度优先搜索
- 深度优先搜索 dfs Oil Deposits HDU - 1241
- leetcode 37. Sudoku Solver 一个经典的DFS深度优先搜索的做法
- 【数据结构_图_DFS_1068】深度优先搜索
- NYOJ1058+NYOJ1282 部分和问题(深度优先搜索DFS入门题)
- DFS深度优先搜索-- hdu5952(DFS中巧妙建图防超时)