原创 题目大意: 钓鱼岛由一个主岛和一些附属岛屿组成,小明决定去钓鱼岛探险。下面这个10*10的二维矩阵就是钓鱼岛 的航拍地图。图中数字表示海拔,0表示海洋,1~9都表示陆地。小明的飞机将会降落在(6,8)处,现在需要 计算出小明将落地所在岛的面积(即有多少个格子)。注意此处把与小明降落点上下左右相 ...
分类:
其他好文 时间:
2018-07-21 14:45:13
阅读次数:
169
广度优先搜索: 策略: 从起点开始遍历其相邻接的节点,由此向外不断扩散 深度优先遍历 策略是: 从一个顶点v出发,首先将v标记为已遍历的顶点,然后选择一个邻接于v的尚未遍历的顶点u,如果u不存在,本次搜素终止。如果u存在,那么从u又开始一次DFS。如此循环直到不存在这样的顶点。 具体参考 https ...
分类:
其他好文 时间:
2018-07-21 14:40:22
阅读次数:
116
原创 上次用DFS解了迷宫救人:https://www.cnblogs.com/chiweiming/p/9313164.html 这次用BFS(广度优先搜索),实现广度优先搜索比深度优先搜索复杂,思路也复杂一些,但是不难理解。 深度优先搜索是一笔画下来,一条道走到黑; 广度优先搜索是多步同时进行, ...
分类:
其他好文 时间:
2018-07-19 19:20:44
阅读次数:
189
(一)基本算法 : 1.枚举 2.搜索: 深度优先搜索 广度优先搜索 启发式搜索 遗传算法 (二)数据结构的算法 (三)数论与代数算法 (四)计算几何的算法:求凸包 (五)图论 算法: 1.哈夫曼编码 2.树的遍历 3.最短路径 算法 4.最小生成树 算法 5.最小树形图 6.网络流 算法 7.匹配 ...
分类:
编程语言 时间:
2018-07-17 22:14:32
阅读次数:
198
本文主要针对如何判断有向图/无向图中是否存在环的问题进行简单的论述。 一 无向图 1.利用DFS进行判断 利用DFS判断有向图是否存在环,是最为常用的一种方法,下面对这种方法及其实现进行详细的阐述。 首先,利用DFS判断无向图中是否换的原理是:若在深度优先搜索的过程中遇到回边(即指向已经访问过的顶点 ...
分类:
其他好文 时间:
2018-07-16 21:41:00
阅读次数:
513
1.DFS DFS是一个递归过程。(类似于二叉树的前序遍历) 参考:深度优先搜索(Depth-First-Search)精髓 2.BFS 可以理解为按层遍历,借助队列结构来实现。(类似于二叉树的层次遍历) 参考:[数据结构]广度优先搜索算法(Breadth-First-Search,BFS) 图的D ...
分类:
其他好文 时间:
2018-07-16 21:07:00
阅读次数:
148
深度优先搜索是搜索的手段之一。它从某个状态开始,不断地转移状态,直到无法转移,然后回退到前一步的状态,继续转移到其他状态,如此重复,直到找到最终的解。 做这类题目,抓住两样东西:1.总体上递归几次(几层)?每一次递归确定一层上的数。 2.每次递归,有几种选择的情况。所以dfs()函数,只有两部分(i ...
分类:
其他好文 时间:
2018-07-13 20:19:43
阅读次数:
185
关于图的遍历,通常有深度优先搜索(DFS)和广度优先搜索(BFS),本文结合一般的图结构(邻接矩阵和邻接表),给出两种遍历算法的模板 1.深度优先搜索(DFS) 关于这个模板,有几点需要注意的: (1)此处的模板适用于以邻接表表示的图结构或者以邻接矩阵表示的图结构,若以邻接表表示的话,时间复杂度为O ...
分类:
其他好文 时间:
2018-07-09 20:32:43
阅读次数:
242
原创 之间就写过一篇全排列的博客:https://www.cnblogs.com/chiweiming/p/8727164.html 详细介绍请回看,用的方法(暂且就叫)是“交换法”,其实思路就是DFS(深度优先搜索),此篇博客对上次全排列思想进行一次升华。 例子: 有3个盒子 1、2、3,3张扑克 ...
分类:
其他好文 时间:
2018-07-08 14:36:14
阅读次数:
185
递归的思想在写程序中运用较为广泛,看视很复杂的问题,通常通过递归思想找出“递归结构”,分解成重复的小步骤即可解决,但是递归的思想有时并不好理解(大佬,悟性高的忽略)。本文通过介绍全排序例子介绍递归思想,最后给出前一次博客写的”坑爹的奥数“问题进行递归优化,给出执行时间。 一、问题描述:假如有编号为1 ...
分类:
其他好文 时间:
2018-07-04 18:56:59
阅读次数:
221