搜索其实就是高级的枚举,很多题目都可以用搜索完成。就算不能,搜索也是骗分神器。

登录以参加训练计划

章节一:深度优先搜索(DFS),即按照深度优先的顺序搜索的算法。深度优先搜索一般使用栈来实现。

章节二:广度优先搜索(BFS),即优先扩展浅层节点,逐渐深入的搜索算法。广度优先搜索一般使用队列来实现。

章节三:记忆化搜索,通过将已经遍历的状态记录下来,从而减少重复的搜索量,这就是记忆化搜索。动态规划的时候,记忆化搜索也是一种高效简洁的实现方式。

章节四:剪枝,对于一些不必要搜索的部分,我们可以避免访问这些状态,从而提高搜索效率。双向搜索,在搜索时,如果能从初态和终态出发,同时进行搜索,就可以减小搜索树的规模,提高时间效率

章节五:迭代加深,简单来说,迭代加深是固定搜索树的层数。一层一层增加着搜索树来寻找答案的算法(和BFS有本质的区别)。一般我们在搜索树增长速度很快而且我们能确定答案在比较浅的节点的时候可以使用它

章节六: A*,在 BFS 中,如果能设计一个合理的估价函数,就可以更快扩展到最优解。这就是 A*算法。

章节七:IDA*,像 BFS 那样,每次只扩展一层节点,却采用 DFS 方式来遍历搜索树,这就是迭代加深搜索。再加上一个估价函数来减小搜索量,就是 IDA*了。

章节八:DLX,算法 X 是通过回溯法求解精确覆盖问题的算法,而删除列这一操作可以使用舞蹈链加速。

章节 1. 深度优先搜索

开放

题目 尝试 AC 难度
P1331  海战 13 4 9
P1596  [USACO10OCT] 湖泊计数 9 5 9
P1460  [USACO2.1] 健康的荷斯坦奶牛 3 3 10
P1706  全排列问题 46 24 4
P4961  小埋与扫雷 1 1 10
P1123  取数游戏 5 2 10
P1219  [USACO1.5] 八皇后 15 7 8
P2959  [USACO09OCT] 散步 1 1 10
P1506  拯救公司总部 4 3 10
P1157  组合的输出 22 17 4
P2404  自然数的拆分问题 11 7 8
P1135  奇怪的电梯 5 2 10
P1683  入门 2 2 10
P2802  回家 9 2 10
P1665  正方形计数 1 1 10
P4888  三去矩阵 3 2 10
P2080  增进感情 3 2 10
P5635  天下第一 1 1 10
P2919  [USACO08NOV] 守护农场 2 2 10
P5440  奇迹 0 0 (无)
P1378  油滴扩展 0 0 (无)

章节 2. 广度优先搜索

开放

题目 尝试 AC 难度
P1451  求细胞数量 11 8 8
P1162  填涂颜色 17 11 6
P1256  显示图像 1 1 10
P1443  马的遍历 3 3 10
P3956  [NOIP2017 普及组] 棋盘 4 2 10
P1032  [NOIP2002 提高组] 字串变换 2 1 10
P1126  机器人搬重物 1 1 10
P1141  01迷宫 1 1 10
P1747  好奇怪的游戏 2 2 10
P1454  圣诞夜的极光 1 1 10
P6566  [NOI Online #3 入门组] 观星 3 1 10
P1746  离开中山路 10 7 9
P1332  血色先锋队 2 2 10
P2298  小明和男家丁的游戏 22 6 8
P1767  家族 0 0 (无)
P2385  [USACO07FEB] 池塘里的睡莲 0 0 (无)
P1825  [USACO11OPEN] 玉米迷宫 1 1 10

章节 3. 记忆化搜索

开放

题目 尝试 AC 难度
P1535  [USACO08MAR] 奶牛旅行 1 1 10
P1514  [NOIP2010 提高组] 引水入城 3 2 10
P1434   滑雪 1 1 10
P1828  [NOIP2001 提高组] 数的划分 1 1 10

章节 4. 搜索的剪枝与双向搜索

开放

题目 尝试 AC 难度
P1120  小木棍 4 1 10
P1312  [NOIP2011 提高组] Mayan 游戏 0 0 (无)
P1074  [NOIP2009 提高组] 靶形数独 1 1 10
P1790  矩形分割 0 0 (无)
P1731  [NOI1999] 生日蛋糕 2 0 10
P4667  电路板 2 1 10
P4799  世界冰球锦标赛 0 0 (无)
P5195  [USACO05DEC] 倪骑士 0 0 (无)

章节 5. 迭代加深

开放

题目 尝试 AC 难度
P1189  SEARCH 1 1 10
P4799  世界冰球锦标赛 0 0 (无)
P3067  [USACO12OPEN] 平衡子集 0 0 (无)
P1771  方程的解 0 0 (无)