大一學生資料結構與演算法的先後取捨

2021-09-23 18:04:32 字數 999 閱讀 9040

【來信】

在上學期,突然一天一位學長問我要選擇哪個方向,指的是演算法和一般的開發。我回答他演算法,而他說我對語言學的太心急,太快,不像是喜歡演算法的,並和我說演算法玩玩就好,不要陷得太深,並建議我走一般開發的路子。雖然學長學的挺好,但就比我大一歲,我還是不太相信他說的。後來在學校acm實驗室納新時,我還是按捺加不住入了。

加入後,我開始對演算法有了一點了解,並開始學習演算法。本來我就是在我校oj上刷刷題。放假時藉了本 《演算法之道》,想在假期惡補一下,可是發現看不太懂。索性就不看了。因為acm實驗室的題目在hdu上,我也轉移到了hdu刷題。後來碰到不會的題,問了一下學長,他看完題告訴我該去學習動態規劃了。於是我開始看部落格,找動態規劃的題目和講解,後來發現乙個部落格上面講的挺好,就一直在那個部落格看,看到圖的時候,我懵了,那時候我還不知道什麼是資料結構,於是我又開始學資料結構。我想資料結構和演算法同時學習。開始發現了一本很簡單的書《啊哈演算法》,在快看完時,我發現這本書講的資料結構比較淺顯,而且還不全,很多內容都在還沒出版的下一冊書上,我感覺對資料結構的講解也有點亂,而且我對裡面的資料結構看的也是模模糊糊,因為書內講的太少,我也練的少,於是在快開學時我放棄了這本書。打算從頭開始系統的系統的學習資料結構,於是找了好多書,找到了一本《大話資料結構》從頭開始學習,然後去找對應的題目去練習,我也跟著實驗室學長的步子,在hdu做練習,貪心,動態規劃。可是我還沒練熟呢,學長就切換到另一種演算法了。當我意識到我的種種問題並打算從新開始時,也快開學了。開學後我在學資料結構做習題時擔心我的演算法學習。練習貪心和動態規劃時又擔心我的資料結構弄不太好。我什麼都沒學好。而且假期學的也因為練習過少,記住的並不太多。

我現在不知道在學習演算法和學習資料結構之間該哪個先學,哪個後學。我怕我學了資料結構,演算法學習上被人拉開。可是不學資料結構,有些涉及到資料結構的題目還搞不定。我想同時學習,現在的結果就是都懂點,僅僅是懂點。我對acm也不太了解,我不知道我先學了資料結構,再去學習演算法會不會有點晚。。老師給指點一下,哪個在先,哪個在後,我對這兩個的先後難以做出取捨。如果同時學,我肯定都學不好,因為還要抽出大量時間學c++,補習英語。我也感覺時間有點緊。我現在可糾結了。

資料結構與演算法(一) 資料結構與演算法概念

資料結構是計算機儲存 組織資料的方式。資料結構是指資料與資料之間的關係。資料結構是指相互之間存在一種或多種特定關係的資料元素的集合。通常情況下,精心選擇的資料結構可以帶來更高的執行或者儲存效率。資料結構往往同高效的檢索演算法和索引技術有關。邏輯結構 示意圖1 集合結構 2 線性結構 3 樹形結構 4...

資料結構與演算法(一)

物件導向程式設計方式 1.使用自定義類封裝陣列 2.新增類方法來實現資料操作。無序陣列 增 刪 改 查 更 顯 public class myarray public myarray int maxsize 新增資料 public void insert long value 顯示資料 public...

資料結構與演算法一

遞迴 無限呼叫自身這個函式,每次呼叫總會改動乙個關鍵變數,直到這個關鍵變數達到邊界的時候,不再呼叫。遞迴與迴圈的區別?相同點 1 都是通過控制乙個變數的邊界 或者多個 來改變多個變數為了得到所需要的值,而反覆而執行的 2 都是按照預先設計好的推斷實現某乙個值求取 請注意,在這裡迴圈要更注重過程,而遞...