总结二
来源:互联网 发布:洞箫f调制作数据图 编辑:程序博客网 时间:2024/06/05 10:29
又到了收获的时候了,忙忙碌碌又是几星期,这几星期除了这个周四早上睡到9点46起来,其他都是7点左右,感觉睡懒觉真是人间天堂啊。
好了,言归正传,总结一下深搜和广搜吧。
做了那么多题,感觉用的广的,而且更加实用,更是很通用。一般的地图,寻找解什么的都是深搜。深搜本身靠递归,效率不是很高,关键在于剪枝,就是根据题意,比如超过边界直接结束,走过或者搜索过直接结束,把以前搜索的结果储存在一个数组,假如结果存在,那么直接输出结果,不要再额外的去浪费时间去搜索了等等,都是剪枝,目的便是为了节约时间,避免超时。很多时候就是不注意题目本身设置的一些隐藏的关键点,导致超时,而解决的办法就是找到那个关键点进行剪枝处理。
再说说广搜,广搜配合队列,应用不是很广泛,区别深搜主要看有没有最优,最小,最少时间什么的,有点题目深搜广搜都可以,看个人偏好选择。
对于深搜和广搜的格式,都差不多,深搜运用递归,判断下一状态的合法性,然后直接递归。广搜则是下一状态合法,存入队列,取头,删头,进行下一状态。两种都雷同,都是递归我觉得。
以后做题,应该多运用搜索的深搜,格式好写,也比较容易想到。
长路漫漫,任重而道远,吾辈切勿玩忽懈怠啊!
0 0
- 总结二
- 总结二
- 总结二
- 总结二
- ZYBB项目总结(二)
- Oracle知识点总结二
- oracle学习总结(二)
- ASP对象总结(二)
- 数据库总结(二)
- oracle学习总结(二)
- 总结篇(二)
- JSP总结二:Servlet
- oracle学习总结(二)
- oracle学习总结(二)
- 学习OpenGL总结二
- 雅思学习总结(二)
- DRP总结(二)
- oracle学习总结(二)
- Rescue
- 剑指offer:二叉树中和为某一值的路径
- 进程、线程与多线程概念详解
- Java Nio 十六、Java NIO Files
- Web前端开发与iOS终端开发的异同
- 总结二
- 装饰者模式
- C++第4次作业
- acm_A strange lift
- CSS3 Media Queries 与Responsive 设计
- java---多线程的并发控制
- Ubuntu 16.04 vim 报错: required vim compiled with +python
- 课程练习二-总结
- 【浅谈git常用命令】