摘要: 本题利用dfs将一整座岛屿找出来,所以我们每在首函数里调用一次dfs函数,就是一座新岛屿,岛屿数量加1 在dfs函数里运用“感染”一词来寻找相连的区域 1 class Solution { 2 public: 3 int ans=0; 4 int numIslands(vector<vector<c 阅读全文
posted @ 2020-10-09 23:13 nilbook 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 本题计算最大的岛屿面积,我们用dfs来深搜每个岛,并在每次dfs之前定义s来计算每个岛的面积,并同时更新最大值,我们将地图二维数组和每个点的x、y和s传入dfs函数,在第一个函数里的每一次dfs,就是一座新的岛屿 在dfs中我们进行点的不合法判断且回溯,并修改遍历过的1改为0,然后将此岛屿面积s++ 阅读全文
posted @ 2020-10-09 22:59 nilbook 阅读(163) 评论(0) 推荐(0) 编辑
摘要: dfs是最广泛的搜索算法,通俗讲就是:一条路走到黑,通过暴力枚举,将所有可能的情况一一枚举,不断地试探来找到解 对每一个可能的分支路径深入到不能再深入,而且每个顶点只访问一次。 dfs一般借助递归来实现: 1 void dfs(int deep){ 2 if(到达边界){ 3 //做一些处理后返回 阅读全文
posted @ 2020-10-09 22:48 nilbook 阅读(173) 评论(0) 推荐(0) 编辑