暑假学习日记2013/7/20
今天的主题就是搜索,按照题表上的题做了一下,几道BFS和DFS,觉得BFS的题貌似都很难看出来,而且总觉得无论怎么做都会超时的样子,可能是对时间复杂度的分析不够吧.做dfs的时候很明显可以看出题目是想让你dfs,今天做了两个简单的dfs,一个就是最简单的骑士遍历了,想起上学期做骑士遍历的时候还是用蛮力以及试探性可达数的方法做,到现在完全靠自己打出dfs,而且打对,不得不说是一个飞跃,那个时候想,什么东西是dfs,那么鬼死难打的东西.现在能够看懂一些dfs代码了.第二题原理类似,题意没看清楚就打浪费了不少时间,后来看懂了打了很就而且也找了很多数据试都过了,但就是WA,找不到原因..真是无解的问题,有空明天再debug看一下吧..- -0
今天还打了一下平面最近点对,第一次看它的算法是在离散数学的书上,但那个时候没太搞懂,现在倒是懂了,原理就是分开两半,然后利用两边的最小值可以大致证明绝大多数情况下跨越中间的点使得最小值被缩小的数量是有限的,就可以搞出一个大致nlogn的算发了.
总结一下今天学习的知识点:
1.简单的BFS(用STL里的队列写貌似挺慢的)
2.平面最近点对