import java.util.*; public class Main { static int ans; static int num[]; public static void main(String args[]) { Scanner scan = new Scanner(System.i ...
分类:
移动开发 时间:
2020-04-30 19:18:28
阅读次数:
65
好的,接下来就是本萌新的第一篇博客啦。直接上深搜!深度优先搜索(Depth-First-Search),简称“深搜”(dfs),是我们蒟蒻们最基本的搜索操作之一。简单地说,深搜就是递归。下面是抄来的解释:深度优先搜索用一个数组存放产生的所有状态。(1) 把初始状态放入数组中,设为当前状态;(2) 扩 ...
分类:
其他好文 时间:
2019-10-04 00:05:40
阅读次数:
121
HDU 1175 连连看 "题目传送门" Problem Description “连连看”相信很多人都玩过。没玩过也没关系,下面我给大家介绍一下游戏规则:在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过一条线连起来(这条线不能经过其它棋子),而且线的转折次数不超过两次,那么这两个棋子就 ...
分类:
其他好文 时间:
2019-08-14 14:17:15
阅读次数:
73
深度优先搜索: dfs,运用递归函数,通过栈的结构进行搜索。 模板: ·dfs(状态) –if 状态 是 目标状态then ·dosomething –else ·for 每个新状态 –if 新状态合法 »dfs(新状态) ·主程序: ·dfs(初始状态) 广度优先搜索: bfs,运用递归函数,通过 ...
分类:
其他好文 时间:
2019-06-09 12:41:29
阅读次数:
104
据说 这是一道很水的题 emmm 好吧 是我过分水了 题目背景 迷宫 【问题描述】 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过。给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案。在迷宫 中移动有上下左右四种方式,每次只能移动一个方格。数据保证起 ...
分类:
其他好文 时间:
2019-01-18 12:12:46
阅读次数:
183
必须用dfs的才用dfs求解,显而易见可以动态规划的都用动态规划求解。 https://leetcode.com/tag/depth-first-search/ ...
分类:
其他好文 时间:
2018-12-20 01:03:34
阅读次数:
188
1042.电子老鼠闯迷宫 时限:1000ms 内存限制:10000K 总时限:3000ms 描述 有一只电子老鼠被困在如下图所示的迷宫中。这是一个12*12单元的正方形迷宫,黑色部分表示建筑物,白色部分是路。电子老鼠可以在路上向上、下、左、右行走,每一步走一个格子。现给定一个起点S和一个终点T,求出 ...
分类:
其他好文 时间:
2018-11-13 02:37:20
阅读次数:
243
dfs深搜 什么是深搜? 百度百科:按照一定的顺序、规则,不断去试探,直到找到问题的解,试完了也没有找到解,那就是无解,试探时一定要试探完所有的情况(实际上就是穷举) 个人理解:暴力穷举每一种状态 它有什么好处? 1. 容易理解 2. 骗分利器 3. 好写 它有什么弊端? 1. 慢。毕竟是穷举每一种 ...
分类:
其他好文 时间:
2018-10-01 23:49:28
阅读次数:
329
深搜(DFS) 关键词:回溯 栈实现,(递归本质和栈一样)一直走到底再回溯,时间复杂度高,空间低 #include<iostream> #include<cstring> using namespace std; int R,C; char maps[40][40]; int dp[40][40]; ...
分类:
其他好文 时间:
2018-07-25 22:08:03
阅读次数:
164
最近做了不少的搜索题,时而用到DFS时而用到BFS,这里对两种搜索方法做一个总结。 广度优先搜索算法(Breadth-First-Search,缩写为 BFS),是一种利用队列实现的搜索算法。简单来说,其搜索过程和 “湖面丢进一块石头激起层层涟漪” 类似。 先搜索邻居,搜完邻居再搜邻居的邻居。 其中 ...
分类:
其他好文 时间:
2018-07-21 21:23:35
阅读次数:
1629