这周没有什么多有趣的事,就是开始为蓝桥杯的最后阶段冲刺,从星期三开始我结束了标准库烦躁的学习,开始又一次的备战,从早到晚就是围绕算法,看看大佬写的笔记经验,练一练题目,我这周主要围绕贪心来写,由于蓝桥杯没答案,也没题解。我就去洛谷上找,它正好有一个章节就是围绕贪心的,而且最简单的都是普及。写了很多天也没做出来什么,就练了6道题,普及提高的有4道,说实话是真的不容易,每道题光代码都差不多快一百行,而且思路也很无语,其实说白了,我们写算法缺的并不是思路,而是在实现思路时被其中的某个细节卡住,而不能继续,所以我们才会觉得难以提高,这一切的一切都是我们自己学的太局限,也可以说学的不精。
这么多天,我对于贪心的看法就是,使用类来初始化题目的目标对象,当然在C系里都是用结构体处理的,还有就是hash表的应用,最多的当属hashMap以及hashSet,当然也不一定非要使用这些东西,只不过在我看来,这些写法易理解,还容易上手。
在我总结看来,贪心最常用的框架无外乎就是,使用类,几个hash,再套用几个for循环,我说的过于肤浅,其实对于很多算法题这都是可以操作的,不仅仅限于贪心,而且我们写算法追求的是时间复杂度的优化,不能肤浅追求内存以及运行思路,说实话java写的再好,它的运行速度也没有C高,也许我说的很绝对,但是不钻牛角尖,你就会承认这都是语言自己的特性造成的,java为了可以兼容多平台,就一定会牺牲他的其他方面。而且不要由于算法大多数都是C++,而觉得java一无是处,用java写总比用js,python,以及C强得多,所以不要片面看待一些语言,不要再一个训练阶段感受到这个语言的好,就说它强,各有千秋,总之没被淘汰掉就是强者。