1. 程式人生 > >java實現單鏈表、棧、佇列三種資料結構

java實現單鏈表、棧、佇列三種資料結構

#一、單鏈表 1、在我們資料結構中,單鏈表非常重要。它裡面的資料元素是以結點為單位,每個結點是由資料元素的資料和下一個結點的地址組成,在java集合框架裡面 LinkedList、HashMap(陣列加連結串列)等等的底層都是用連結串列實現的。 2、下面是單鏈表的幾個特點: 資料元素在記憶體中存放的地址是不連續的:單鏈表的結點裡面還定義一個結點,它裡面儲存著下一個結點的記憶體地址,在例項化物件的時候,jvm會開闢不同記憶體空間,並且是不連續的。 新增效率高:新增一個元素時,先找到插入位置的前一個,只需要將1,2個元素的連線斷開,將插入結點的next指向第一個元素的next(1),然後將第一個元素的next指向插入結點(2), 不用在挪動後面元素。 ![](https://img2020.cnblogs.com/blog/2038860/202010/2038860-20201027095836958-632961950.png) 刪除效率高:刪除一個元素時,先找到刪除位置,將前一個的next指向刪除位置的next,不用在挪動後面元素。 ![](https://img2020.cnblogs.com/blog/2038860/202010/2038860-20201027095437096-1442225128.png) 查詢效率低:查詢的時候必須從頭開始,依次遍歷,而陣列因為它的記憶體是連續的,可以直接通過索引查詢。 3、下面通過程式碼來實現單鏈表結構: ```java package com.tlinkedList; /** * User:zhang * Date:2020/10/26 **/ public class TLi