dfs
随心随性随天意
命数如此
展开
-
n皇后问题(回溯法)
问题:在n×n格的国际象棋上摆放n个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法?分析:乍一看n*n似乎需要一个二维数组,实际上一个一维数组就足够了,例如rec[x]=y;其中x就是横坐标,y就是纵坐标。这边讲解的是中规中矩的回溯法。回溯法:步步深入试探,若无果,返回上一级重新选择,这就是回溯法。(感觉像深搜的剪枝)大致思路:就是回溯的...原创 2019-06-06 21:31:00 · 629 阅读 · 0 评论 -
9*9数独游戏
分析:深搜:很常规的从行开始遍历,遍历到底后,移到下一列再次遍历其行。如果遇到无法填入的情况则放回上一级尝试其他可选数字。样例:输入:005300000800000020070010500400005300010070006003200080060500009004000030000009700输出:12534689783146792527691854348962...原创 2019-06-07 13:59:52 · 4079 阅读 · 4 评论 -
dfs之水洼数目
1. 问题描述:水洼数目有一个大小为N * M的院子,雨后积起了水,八连通的积水被认为是连在一起的,请求出园子里面总共有多少水洼(八连通指的是下图中相对w大的*部分)import java.util.Scanner;public class _14dfs水洼数目 { //外层扫描扫描到W便进行深搜将所有W都揪出来变成. static char[][] matrix; static ...原创 2019-06-16 11:59:27 · 351 阅读 · 0 评论