好了,最近学习了搜索,感觉我还没有完全掌握这俩种算法,先去oj刷刷简单题找找手感
搜索其实跟枚举类似,找到所有方案
求最值,方案数之类的,输出结果
搜索分为俩种
1。DFS:深搜,主要由递归实现,所以得先学好递归
递归:将大问题分为小问题,小问题和大问题的解决方法类似
经典问题,输出1 2 3的全排列
思路,一个一个放,没放过的数字就放进去
因此是dfs(1)//第一个格子
然后枚举所有数字,看看哪个数字没放
dfs(1+1)再放下一个格子,因此这就是搜索出所有状态
2.BFS:广搜,主要基于队列实现
实现队列,入队,取对头,将她能边的状态入队
并记录结果
好了,先刷几道题练练手