摘要: 上一次为了解决矩阵中的连通块的个数,我模仿了算法笔记中的代码,通过BFS(广度优先搜索算法)解决问题。 实际上这个问题(问题链接)也可以通过DFS(深度优先搜索遍历)解决。 解决思路:这个DFS的“岔道口”其实有四个(因为有四个方向)。这里为了防止走回头路,所以我们必须设立一个数组 记录该位置元素是 阅读全文
posted @ 2020-03-24 23:29 focusDing 阅读(988) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了深度优先搜索,可知DFS是以深度作为关键词的,即当碰到岔道口时总是先选择其中的一条岔路前进,而不管其它的岔路, 直到碰到死胡同时才返回岔道口并选择其它岔路。接下来介绍的广度优先搜索(Breadth First Search,BFS)则是以广度为第一关键词, 当碰到岔道口时,总是先依次访问从 阅读全文
posted @ 2020-03-24 22:28 focusDing 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 题目描述:给出一个m*n的矩阵,矩阵中的元素为0或1.称位置(x,y)与其上下左右四个位置是相邻的。如果矩阵中有若干个1相邻,则称这些1构成了一个块。求给定矩阵中的块数。输入:0 1 1 1 0 0 10 0 1 0 0 0 00 0 0 0 1 0 00 0 0 1 1 1 01 1 1 0 1 阅读全文
posted @ 2020-03-24 22:23 focusDing 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 90 循环数 作者: xxx时间限制: 1S章节: 一维数组 问题描述 : 循环数是那些不包括0这个数字的没有重复数字的整数 (比如说, 81362) 并且同时具有一个有趣的性质, 就像这个例子: 如果你从最左边的数字( 记为n,在这个例子中是8) 开始往右边数,一直数n个数字(如果已经到了最右边则 阅读全文
posted @ 2020-03-24 14:56 focusDing 阅读(232) 评论(0) 推荐(0) 编辑