如何有定力並高效的學習編程?
我是一個計算機專業大二的學生 也在參加ACM 但是在編程和學習的時候 經常一件事還沒做好就去做另一件事 跳來跳去 效率極其低
因此長久以來有很多漏洞 一個例子 我在做OJ上的題目 看到搜索 正在看代碼 看著看著發現一個容器不會 去看容器 看了一會容器發現stl中的函數又不會 又去看另一個點......根本停不下來所以我的朋友總是看起來我很忙 水平卻提高甚微
長此以往 不是辦法 有哪些對於演算法學習和編程技巧提高行之有效的方法?
斷網
同感。
但是我覺得題主內容上說的不是自己沒有定力,反而是方法、做法的問題。那我說說我的看法吧。
首先演算法這個東西,知識廣度大。那就分治唄。
看出題主獲取知識主要是通過網路,強烈推薦使用谷歌搜索知識(如果已經是的話就忽略上面這條 ),谷歌可以快捷地幫你找到條理清晰,解釋詳盡的博文,學習完後適當筆記(筆記工具最好全平台支持的,筆記需要像書一樣天天看,天天修訂,想著10年後要出版!定力往往來自於一個看得見的增長的事物,比如各種養成類遊戲)
但是!!!這兩年的親身經歷告訴我自己,要想從下而上,系統地學習知識,看書才是王道!!!(很多人沉不下心看完)通過便捷的搜索獲得的知識,誤人子弟的不去說,即使是正確的,也很碎片化的。
編程這個東西嘛~看書後,自己實踐啊!自己實現啊!
這樣明明很正常啊,想短時間內有大提升反而不正常。
會跳到別的地方去學說明知識廣度不夠,只要控制在一個領域內,就算是寸進,積累起來也有尺長,一切都是能否堅持所決定的。
Just keep moving和題主完全一樣的情況,目前正在知乎找答案!
多看看別人的代碼,找尋其中寫得不錯的地方,學著模仿
其實在最開始的時候這也很正常。
我的建議是 善於歸納總結做筆記,梳理自己掌握的知識。還有就是。。STL容器的使用方法這類的基礎技能要紮實,不能成為你編程的障礙啊,最起碼你得能夠很迅速地通過查手冊把它搞定。建議系統地讀一本STL的書
ps:就讀書而言,讀紙質的書比讀電子書(即使是用Kindle)更讓我有「定力」。一點小建議。題主加油
推薦閱讀:
※作為一名程序員,你為什麼歡迎或不歡迎轉基因食品?
※能不能用double去取代float?
※想自學編程怎樣下手?
※如何評價中科大軟院的孟寧老師?
※女生適合學軟體工程嗎?