CodeGym /Java Blog /Toto sisi /編碼技能升級。在哪裡學習數據結構
John Squirrels
等級 41
San Francisco

編碼技能升級。在哪裡學習數據結構

在 Toto sisi 群組發布
如您所知,編程是一個對知識要求很高的職業。除了真正掌握任何編程語言都需要大量時間和實踐經驗這一事實之外,通常這還不夠。要成為一名成功的專業軟件工程師,您通常還需要了解軟件開發工作的多個其他領域和組成部分。儘管在 CodeGym,我們的目標是培訓我們的學生成為真正的功能性 Java 開發人員,準備好聘用,但一門課程,即使像 CG 一樣出色且結構良好,也無法為您提供您可能需要的所有知識作為一個專業軟件開發人員。 編碼技能升級。 在哪裡學習數據結構 - 1這就是為什麼我們決定寫一些關於不屬於 CodeGym 課程的其他編程相關主題的文章,並提供有關您可以在哪裡學習它們的鏈接和建議。今天我們要講的是數據結構。

什麼是數據結構

數據結構是一種能夠實現高效訪問和修改的數據組織、管理和存儲格式。更準確地說,數據結構是數據值、它們之間的關係以及可以應用於數據的函數或操作的集合。”這個定義有點令人困惑,但它的要點很清楚。數據結構是一個一種我們存儲數據以供將來使用的存儲庫。在編程中,有各種各樣的數據結構。在解決特定問題時,最重要的往往是為問題選擇最合適的數據結構。這就是為什麼許多專業軟件開發人員都需要熟悉數據結構。

在哪裡學習數據結構

1. 書籍

儘管主題本身很複雜,但 Java 中的數據結構和算法旨在易於閱讀和理解。除了清晰簡單的示例程序外,作者還包括一個 workshop 作為可在 Web 瀏覽器上執行的小型演示程序。這些程序以圖形形式展示了數據結構的外觀及其操作方式。

一本非常古老(首次出版於 1983 年)但仍然是最受歡迎的數據結構和算法入門教科書之一。作者在數據結構和算法中對數據結構的處理通過“抽像數據類型”的非正式概念統一起來,允許讀者比較同一概念的不同實現。還強調了算法設計技術,並涵蓋了基本算法分析。大多數程序都是用 Pascal 編寫的。

另一本適合數據結構初學者的好教科書。《Data Structures And Algorithms Made Easy: Data Structures and Algorithmic Puzzles》是一本為複雜數據結構和算法提供解決方案的書。每個問題都有多種解決方案,本書使用 C/C++ 編寫。本書可以作為準備面試、考試和校園工作的指南。

Advanced Data Structures 作為應用算法的專門主題,全面介紹了數據結構的思想、分析和實現細節。本書探討了通過各種數據結構搜索和更新數字集、區間集或字符串集的有效方法,例如搜索樹、區間集結構或分段常數函數、正交範圍搜索結構、堆、聯合查找結構、結構的動態化和持久化、字符串結構和哈希表。

2.在線課程

“一個好的算法通常與一組好的數據結構結合在一起,使算法能夠有效地操作數據。在本課程中,作為算法和數據結構微型碩士課程的一部分,我們將考慮在各種計算問題中使用的常見數據結構。您將了解這些數據結構是如何用不同的編程語言實現的,並將在我們的編程作業中練習實現它們。這將幫助您了解數據結構的特定內置實現內部發生的情況以及對它的期望。您還將學習這些數據結構的典型用例,”該課程的作者說。

價格:免費,但需要訂閱 Pluralsight 平台。Robert Horvick 的課程,他是一位經驗豐富的開發人員,在 Microsoft 工作了近 10 年,從事各種項目。“在本課程中,我們將研究日常應用中使用的核心數據結構和算法。我們將討論選擇每種數據結構所涉及的權衡,以及遍歷、檢索和更新算法,”Horvick 說。

價格:Udemy 99.9 美元。Java 程序員最好的數據結構(和算法)課程之一。這是一門實踐課程,適用於試圖深入理解事物並致力於實現而不是理論的 Java 編碼人員。涵蓋的主題包括數組、鏈接列表、樹、哈希表、堆棧、隊列、堆、排序算法和搜索算法。該課程還比大多數其他同類課程花費更多的時間來了解 JDK 中的可用內容。

3. YouTube 頻道

Programming with Mosh 是面向編程初學者的熱門主流 YouTube 頻道。它有很多很多關於 Java 和其他編程語言的教程,它們結構合理,介紹也很好,包括數據結構和算法的教程。如果您不想讀書和支付課程費用,這是熟悉這些主題的好方法。

Google 工程師 William Fiset 提供的最好的數據結構免費視頻課程之一。本課程使用高質量的動畫來直觀地表示數據結構,向初學者教授數據結構。您將學習如何編寫各種數據結構以及簡單易懂的分步說明。提供的每個數據結構都附有一些可用的 Java 源代碼。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION