2017年8月5日训练日记

来源:互联网 发布:二十四小时软件 编辑:程序博客网 时间:2024/05/14 14:29

       今天训练的主要目的是熟练掌握图论内容中求最短路径的四种算法(Floyed算法、Dijk算法、Bell-ford算法和SPFA算法)。弗洛伊德算法时间复杂度最高(n3),但是能解决无边权或负边权问题。Dijk算法时间复杂度最低(n2),但无法解决负权问题。Bell-ford算法(NE),能解决负边权最短路径,但无法解决负权回路问题。而SPFA算法(kE)就可以解决负权回路问题。四种方法都可以输出最短路径方案。今天掌握并运用用这几种算法,解决了正负权回路问题和最短路径问题。另外,还用深搜(dfs)解决了切数字求和输出切法的问题。

       在用这种算法解决问题时,我又发现了自己的一个问题:1A率实在太低。1A率不足%25。刚开始没1A是服务器问题,但是之后做的题目都得先WR几次才能A掉。这还是说明我考虑问题不够仔细,不够全面,样例过了就急着交,常常是WR。希望通过每一天的锻炼,我能够尽量做到考虑问题周全一些,而不是急着交却WR,眼睁睁的看着小伙伴1A。并查集、最小生成树以及拓扑排序还没理解。

       总结:今天成功地完成了昨天的目标,巩固了深搜(dfs),理解、学会求最短路径的四种方法并熟练运用去解决水题。牢记四种算法的特点和基本框架、基本思想以及学会灵活的变式。并且解决了求正负权回路的简单题目。明天的主要目标是仔细地再看一遍课件,把剩下的三节知识再看一遍并掌握。继续向剩下的几道比较难的水题发起冲击。

       以梦为码,迎光出发。

原创粉丝点击