历史 python2.1 经典类 DFS(深度优先遍历) python2.2 引入新式类,经典类 DFS,新式类 BFS(广度优先遍历) python2.3 2.7 经典类 DFS,新式类 C3 python3 新式类 C3 U型继承和菱形继承 U型继承 对于DFS算法,MRO(方法解析顺序)为: ...
分类:
编程语言 时间:
2020-03-04 19:09:13
阅读次数:
83
题目链接:https://vjudge.net/problem/POJ-1077 题目大意:八数码,问你能不能把当前状态转换成12345678x,可以就输出转换步骤,不行就输出unsolvable。 经典的八数码题,只是在普通的bfs基础上用上了康托展开,用map,string的可能会t #incl ...
分类:
其他好文 时间:
2020-03-03 20:53:29
阅读次数:
78
图论 坑 dij使用地图是带权图 记得初始化为INF 无边的权值是INF,不是0,并且这个INF别用INT_MAX这个宏,会导致出现一些问题,比如dij更新路径的时候,INT_MAX + 1会变成负值,出错,自己定义一个比较大的数就行了 思路与总结 与图相关的算法 dfs/bfs 最小生成树(pri ...
分类:
其他好文 时间:
2020-03-03 00:37:53
阅读次数:
128
首先很感谢 P1135 "奇怪的电梯" 【2.14补充:此题已被AC!然后将被我花式虐[From语]哈哈哈哈哈哈哈哈哈哈好嗨哟感觉人生已经到达了巅峰感觉人生已经到达了高潮】这道题了!在做这道题的我大致就是下图qwq: dfs— sp— bfs— stl 于是小蒟蒻准备写一篇博客整理一下STL库啦! ...
分类:
编程语言 时间:
2020-03-02 15:16:14
阅读次数:
94
题目描述: 题解:一开始处理的时候写了个dfs一直超时,其实先用bfs找到所有可能的起始点,对每个起始点dfs一下就可以了。 (纯dfs的话,如果树很深的时候,会一直先尝试一个分支到低端,很容易就超时了) AC代码: class Solution { public: int dfs(ListNode ...
分类:
其他好文 时间:
2020-03-02 10:32:26
阅读次数:
43
好久没写搜索,到忘了,找了半个小时错误。一开始又把题看错了,真服自己了。(认真审题)这题可以用excel写。but作为一个程序园,那就要使用灵魂操作。核心算法:bfs层次遍历 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 string s ...
分类:
其他好文 时间:
2020-03-01 21:58:10
阅读次数:
88
[GDOI2015]推箱子(状压bfs) 题面 题面过长,略 分析 观察到$m \times m =64 $,那么可以把箱子的01状态压到一个 里面 然后对于地图上的每一个点$(x,y)$,预处理出左上角在$(x,y)$,边长为$m$的正方形的01状态。如果这个状态和箱子的状态按位与的结果为0,那么 ...
分类:
其他好文 时间:
2020-03-01 19:44:26
阅读次数:
72
BFS: 1. 所需空间是指数级别的,大 2. 自己开队列存,不会有爆栈的风险 3. 能最先搜出最短路径长的结果 DFS: 1. 所需空间和深度成正比,小 2. 直接用递归栈的话,有爆栈的风险。C++给分配的栈空间大概就4M,所以大概可以搜10万层 3. 不能先搜出最短路径长的结果 4. 直接用递归 ...
分类:
其他好文 时间:
2020-03-01 12:23:14
阅读次数:
122
题目链接:https://vjudge.net/problem/POJ-2110 题目描述:让你从图中选出一条从左上角到右下角的路,求这条路上最大的点和最小的点的差值 因为差值只有0~110,所以我们直接二分一个差值然后在bfs即可 #include<set> #include<map> #incl ...
分类:
其他好文 时间:
2020-02-29 20:46:26
阅读次数:
75
第三次写博客,请多指教! 这篇博客是本人为了回顾思路,各位看官爱看不看(手动滑稽)! http://codeforces.com/contest/1307/problem/D 题目链接 题目大意就是要你从k个特殊点选出两个点连边,问连边之后1到n的最短路距离最大是多少 那么直接说思路,先用bfs找出 ...
分类:
其他好文 时间:
2020-02-28 22:58:23
阅读次数:
63