![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
文章平均质量分 70
7_26
我很勤劳,还没有添加简介
展开
-
各种搜索汇总
优先队列BFS和Dijkstra为什么把这两个放在一起讲,因为这两个特别像;优先队列每次都把当前已经确定的点中选出一个与原点距离最短的出来然后再把这个玩意用来更新所有没有确定的点;dijkstra也是这样;代码:朴素算法dijkstra:#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int N = 510;int n, m, g[N原创 2021-06-08 18:49:42 · 382 阅读 · 2 评论 -
记迭代加深
迭代加深迭代加深就是说在搜索的过程中可能出现一种情况使得深度非常大但是你的答案深度又非常浅,于是就要每次限制一个深度,如果超过了那个深度就直接返回,和广搜还是不太一样的,因为广搜是每层搜了再去搜下一层,而迭代加深就是约束之后的深搜,就是个深搜,而且广搜有些东西是做不了的,最开始我不相信这句话知道我看见这道题加成序列加成序列思路题目中给出的N的范围是100以内,如果直接搜是有可能很难搜到的,如果用迭代加深的话,即使出现比较坏的情况,效率也不会很低大概和暴力差不多或者少一点;那么每次进行dfs的时候原创 2021-06-03 18:59:33 · 156 阅读 · 1 评论