最近有面试笔试都要准备,小菜鸟瑟瑟发抖。等面完了就继续学习写blog。压力就是动力!
手动分割线
一个搜索的问题通常包括如下的信息
- 状态空间
- 后继函数
- 起始状态和终点检测
- 解决方法是一系列从起点到终点的转变动作
搜索空间大小
树搜索Tree Search
Depth-First Search 深度优先搜索
策略:首先扩展一个最深的结点
实现:Fringe是一个LIFO的栈
Breadth-First Search 广度优先搜索
策略:首先扩展最浅的结点
实现:Fringe是一个FIFO的队列。
Uniform Cost Search (UCS)
策略:首先扩展花费最少的结点
实现:Fringe是一个首先队列 (优先:积累的值)