2019.10.11 Upd:这是 ZS 时期写的一篇非常 naive 的博客,别看了。
SPFA 会被卡,Dij 才最好。
SPFA真是最好的单源最短路算法,没有之一。
SPFA全称是Shortest Path Faster Algorithm,直译过来就是“最短路更快算法”,从这个名称就能看出SPFA效率很高。SPFA加上SLF优化以后被称作单源最短路的“无敌”,时间复杂度可以达到O(ke)(k表示平均每个节点入队次数,k≤2,e表示边数),可以刷负边权。
2019.10.11 Upd:这是 ZS 时期写的一篇非常 naive 的博客,别看了。
SPFA 会被卡,Dij 才最好。
SPFA真是最好的单源最短路算法,没有之一。
SPFA全称是Shortest Path Faster Algorithm,直译过来就是“最短路更快算法”,从这个名称就能看出SPFA效率很高。SPFA加上SLF优化以后被称作单源最短路的“无敌”,时间复杂度可以达到O(ke)(k表示平均每个节点入队次数,k≤2,e表示边数),可以刷负边权。
Linux用久了发现VIM命令还是需要学一下……
一开始用VIM:“这什么垃圾编辑器,连图形界面都没有,还要用命令行,不能直接移动光标,上个世纪的吧!”VIM在终端里运行,使用方式完全与我们习惯用的Windows操作系统里的文本编辑器不同。实际上这就是VIM的强大之处:不需要图形界面就可以直接在终端里编辑文本。
C++ STL 里的 set,顾名思义就是集合。和数学里的集合一样,C++ STL 里的集合也具有互异性,即每个元素最多只出现一次。如果需要某个值出现多次就可以用 multiset。
集合的好处是,集合里存的元素都是从小到大排好序的。这和插排不同,集合的复杂度是 log2(n),对解决一些题目十分有用。
Say hello to the world!
据说这个博客是用来写学 OI 的总结的?!