算法
是力力子呀
这个作者很懒,什么都没留下…
展开
-
DFS-走迷宫
DFS-走迷宫深搜走迷宫有一个需要特别注意的地方同时也是这道的精华:方向数组的使用,通过循环加方向数组的方式,我们就可以轻松的实现这道题啦。方向数组图解:代码:#include<iostream>#include<cstring>using namespace std;const int N = 20;int v[N][N];char g[N][N];int n, m, res, x, y;int dx[4] = {1, 0, -1, 0}, dy[原创 2021-03-27 21:04:01 · 227 阅读 · 1 评论 -
DFS-n皇后问题
DFS-n皇后问题解决n皇后问题的方法有很多,这里主要介绍两种方法,分别是全排列法和DFS原滋原味法1.全排列法:图解和上一题排列数字类似.代码:#include<iostream>using namespace std;const int N = 10;int n;char g[N][N];int c[N], dg[N], udg[N];void dfs(int u){ if(u == n) { for(int i = 0;原创 2021-03-27 20:27:28 · 143 阅读 · 0 评论 -
DFS-排列数字
DFS-排列数字图解:代码:#include<iostream>using namespace std;const int N = 10;int st[N], path[N];// st数组作为flag,记录数字是否被使用,path数组存储数字int n;void dfs(int u){ // 走到最后一层,输出结果 if(u == n){ for(int i = 0; i < n; i++) cout原创 2021-03-27 19:10:58 · 134 阅读 · 3 评论