昨天继续学习了第三章的A*算法,A*算法本质上是一种带有估价函数的优先队列BFS算法。需要维护一个二叉堆(优先队列)来存储状态及其估价,但相对耗费空间较大,所以有学习了估价函数与迭代加深的DFS算法结合起来的IDA*算法。
这两个算法都比较难,虽然基于BFS/DFS,但更重要的是设计估价函数,所以我只是看了算法的基本如何实现,例题都没有做,好难啊。
对于前天大概看的5类剪枝方法,我也是只看了个皮毛,没有靠做题来补充,想着先把知识点理解一遍算啦。发现最近自己有“知难而退”的坏习惯,一到难的部分就想着囫囵吞枣,急匆匆地跳过去。
正好我大致地看了第一遍课本,今天想正式从头再复习一遍,这一遍要代码实现,例题掌握,题的类型全面抓起。
OK,可以滚去学习啦,给自己打打气,好好学习,中午有好吃的在等着你。