如何在 Java 中從頭開始實現 LinkedList 類

已發表: 2013-06-19
Crunchify Java LinkedList 實現教程

如果您實際上正在構建一個真正的生產系統,那麼是的,如果您需要的東西在那裡可用,您通常只需使用標準庫中的東西。 也就是說,不要認為這是一個毫無意義的練習。

了解事物是如何工作的很好, understanding linked lists是了解更複雜數據結構的重要一步,其中許多數據結構在標準庫中不存在。

創建鏈接列表的方式與 Java 集合 API 的創建方式之間存在一些差異。

Collections API 試圖遵循更複雜的接口。 您的 LinkedList 將始終包含至少一個元素。

通過這種設置,您可以在需要空列表時使用 null。 將“下一個”視為“列表的其餘部分”。 事實上,很多人會稱它為tail而不是“下一個”。

這是一個單鍊錶的示意圖:

Crunchify 單鍊錶示例

另一個必須閱讀:

  • 如何在 Java 中遍歷 LinkedList 實例?
  • Java:如何找到 LinkedList 的中間元素?

從頭開始在 Java 中創建鍊錶的最佳方法是什麼?

好吧,這裡是 Java 中 LinkedList 類的最簡單實現。

從零開始使用 Java 中的 LinkedList - Crunchify 教程

幾樣東西:

這裡我們只在adding 1st element時初始化Node

結果:

對此實現的增強包括使其成為double-linked list ,添加從中間或末尾insertdelete的方法,以及添加getsort方法。

來自 Laurence Gonsalves 的 Stack Overflow 的參考答案。 您可能對所有 Java 教程的列表感興趣。