挑战程序设计竞赛
文章平均质量分 57
冰镇白干
知其不可奈何而安之若命
展开
-
《挑战程序设计竞赛》——BFS
BFS(宽度优先搜索) 简介 宽度优先搜索(BFS,breadth-First Search)也是一种搜索的手段。是从一个状态开始,总是先搜索离它最近的所有状态,所以对于宽度优先搜索,同一个状态只经过一次,复杂度为O(状态数*转移的方式) BFS的基本思路 它是按照开始状态——>只需一次就可以到达的所有状态——>只需二次转移就可以到达的所有状态——>···· 从数据结构上来看DFS利用了栈,而BFS则利用的队列。搜索时首先将初始状态添加到队列里,然后又不断地从队头取.原创 2021-09-21 16:02:05 · 95 阅读 · 0 评论 -
《挑战程序设计竞赛》——DFS
DFS(深度优先搜索) 简介 深度优先搜索(DFS,Depth-First Search)是搜索的手段之一。它从某个状态开始,不断的转移状态直到无法转移。然后退回到前一步的状态,继续转移到其他状态,如此不断地重复直到找到最后的解。 样例一 题目 部分和问题 给定整数a1,a2----an,判断是否可以从中选出若干数,判断是否存在几个数或某个数和恰为k 分析 对于本题来说只需判断两种状态加与不加,如果此状态满足和为k返回sum==k 代码 O(2 ^n) //输入 int a[MAX..原创 2021-09-21 15:55:34 · 178 阅读 · 2 评论