回覆列表
  • 1 # 使用者6681259736784

    資料結構主要是記住每種結構的思想和要注意的特殊概念,一定要做到能用自己的主學的語言將每種結構復現。

    例如,連結串列章節中的反轉連結串列,連結串列的增刪改查;隊棧章節的用佇列實現棧,用棧實現佇列等等。

    其次是做一些演算法習題,主要用來將所學的資料結構融入到具體問題的解決中,推薦LeetCode網站,可以按照標籤刷題。(這樣既可以將所學的資料結構思想鞏固,也提升了程式設計能力)

    對於理論試題,我認為是非常有必要做的。因為平時應用的理論內容是有限的,也或者平時知道怎麼用,會套用演算法結構模板,但是具體到要做一些最佳化或者改寫時,可能會忘記一些理論。因此,要時不時鞏固一些理論知識。具體的刷題網站推薦牛客網對應的資料結構部分,也是一個標籤一個標籤的刷。

    對於書籍,我推薦《天勤資料結構》這是一本考研書籍,但是絕對對理論的學習是非常有幫助的。或者可以選擇《新編資料結構與習題解析》。

    如果你使用Java語言,那麼推薦《資料結構與演算法 Java語言描述》,注意名字中沒有“分析”兩字,不要買錯了,封皮有紫色的鳥。使用其他語言,不推薦書籍,跟著別人的部落格就可以。把Java列出來,是因為它的集合部分將一些資料結構做了封裝,因此,需要深入瞭解這些集合的底層程式碼,推薦的書就是將這些講明白。當然,很多部落格也都寫了相關解釋,但是目前為止,我並沒有發現有很好的部落格。許多閱讀量多的部落格,也並沒有將一些重要概念寫清楚,基本都是抄書講直白的概念。

  • 中秋節和大豐收的關聯?
  • 有什麼好的習慣可以預防宮頸癌的?