准备算法的时候,又去翻了算法导论,从头开始,看到排序那部分 来不及看后面的了...
忽然觉得,排序那部分并不是教你怎么写排序的,而是告诉你,常用的提高效率的手段有哪些:
最简单的排序像insert sort、bubble sort都是O(n^2)的,没有非常明显的效率问题(相对于写递归求fibonacci数列的第n项来说)
然后发现 我们可以用divide and conquer把效率提高到O(n lg n) (我可以在哪里应用到这个方法?)
再然后证明了比较排序的下界是 O(n lg n) (我在哪里可以用到这个方法?)
再再然后,说,我可以进一步利用数组的信息,作出O(n)的算法...
愚钝如我 到今天才明白过来...
做东西做得太少了吧... 很少思考效率的问题 :(