1.1 個人感悟
這種狀態直到前段時間才有改變。幫師弟解決了乙個檔案中字串排序的問題,使用了一直早有耳聞的multimap
,將乙個本來需要將近1h
才能出結果的程式優化成1s
不到出結果,著實在精神上感到了振奮,也認識到了資料結構和演算法的巨大威力和無窮魅力!
讓我發自內心感受到身為程式設計師,無法駕馭資料結構和演算法就像鳥兒無法駕馭自己的翅膀。
1.2 學習路線
1.3 業內大佬的看法
mit 教授 erik demaine:
if you want to become a good programmer, you can spend 10 years總而言之,如果你想成為乙個碼農或是熟練工(code monkey),你大可以不學演算法,因為演算法對你確實沒有用;但如果你想成為乙個優秀的開發者(developer),紮實的演算法必不可少,因為你會不斷的掉進一些只能借助演算法才能爬出去的坑里。programming, or spend 2 years programming and learning algorithms.
1.1 擇書原因
lz去年9月份找工作,一直聽人說要刷劍指offer,可是由於種種原因沒有實現,現在稍微有時間了,花了兩周把之前想做未做的事情做了。
既然大家都推崇這本書,說明這裡面的題目常考;既然這裡面的題目常考,說明這裡面的題目比其他題目有更大概率會出現在現實場景中。這也是我選擇這本書的原因。
1.2 刷題筆記
學習和做題過程中進行了一些個人總結和記錄,很多都在注釋裡:
資料結構與演算法學習
我想重新學習一下資料結構與演算法,打好基礎。to measure is to know.我們用演算法複雜度t n 來表示演算法的效率,效能。t n 的取值 所有問題規模為n的問題例項中,將他們的計算成本進行總體的比較,取出最壞情況下的值。有幾點需要catch,1.演算法執行的時間,會根據程式語言,作...
資料結構與演算法學習之演算法入門筆記
關於計算 物件 規律 技巧。目標 高效 低耗。computer science computing science演算法 特定計算模型下,旨在解決特定問題的指令序列。輸入 輸出 正確性 確定性 可行性 有窮性。hailstone序列目前無法證明有窮性或無窮性。程式 不等於 演算法 死迴圈 有窮性 好...
資料結構與演算法之小白高階
作為乙個馬上要面對實習的大學生,我深知自己的知識水平和能力的有限,所以準備從現在開始主攻資料結構與演算法,雖然之前也有過接觸,但是沒有系統 全面的了解過,作為面試與工作中必備的重要技能,學好資料結構與演算法是非常重要的。所以我會與大家一起分享每天學習的經驗所得,希望每乙個奮鬥在這條路上的朋友都會達到...