随笔分类 -  算法竞赛 / 搜索

摘要:# 洪水填充 洪水填充是搜索的一个简单应用。一张图上有多个区域,不同的区域用不同颜色区分,同一个区域的所有点的颜色都是相同的。给定图上的一个点,称为种子点,然后从种子点出发,把种子点所属的封闭区域用新颜色填充,这就是洪水填充。 洪水填充的编程用BFS和DFS都可以。洪水扩散过程符合BFS的原理,不过 阅读全文
posted @ 2023-08-02 19:13 cker 阅读(288) 评论(0) 推荐(0)
摘要:# 剪枝 ## 导论 剪枝是搜索必用的优化手段,常常能把指数级的复杂度优化到近似多项式的复杂度。 剪枝是一个比喻:把不会产生答案的或不必要的枝条"剪掉"。剪枝的关键在于剪枝的判断:什么该剪,在什么地方剪。 > BFS剪枝通常用判重。如果搜索到某一层时,出现重复的状态,就剪枝。 >DFS剪枝技术较多, 阅读全文
posted @ 2023-07-27 21:34 cker 阅读(195) 评论(0) 推荐(0)
摘要:# BFS和DFS基础 ## 搜索简介 搜索是"暴力法"算法的具体实现,是一种吧所有可能的情况都罗列出来,然后逐一检查,从中找到答案的方法。 ### 一般步骤 1. 找到所有可能的数据,并且永数据结构表示和存储。 2. 优化:尽量多的排除不符合条件的数据,以减少搜索空间。 3. 用某个算法快速检索这 阅读全文
posted @ 2023-07-15 19:10 cker 阅读(129) 评论(0) 推荐(0)