算法導論已學兩部分,第一部分是基礎知識,第二部分是排序。基礎知識介紹如何分析證明算法以及求時間復雜度。第二部分的排序學了很長時間。先是從簡單排序到復雜排序的一個過渡,打開了很多思路。然后就是無盡的算法分析。算法分析的時間比理解算法的時間要長得多,特別是后面幾章算時間復雜度時使用概率時,所用的數學知識讓我有點吃力。一個排序花了一個部分,就是為了不斷的優化,提高效率,對于我來說,這是否太過于注重時間復雜度了。或者作者的目的是通過較為簡單的排序,來舉幾個例子,使讀者學會如何分析算法。
?
剛開始學習算法時沒有什么目的,只知道這是很基礎的東西,想盡量學好,所以學得比較仔細,也比較慢。書上要求什么我就做什么。而現在由于實際原因,想要通過學習算法去解決實際問題,為了趕進度,后面對于算法時間復雜度的分析放松下來,而時間復雜度是第二部分很重要的部分,后面兩章過得比較粗心。
?
第三部分開始數據結構,雖然也是基礎,但也終于把排序翻過去了。可能到第四部分才會運用到實際中去,希望寒假能把第四部分學完。