單鏈表

來源:互聯網
上載者:User

標籤:blog   http   使用   strong   2014   代碼   工作   時間   

1、引言

        工作一年了,感覺越來越懶散,把很多基礎性的東西都慢慢遺忘了,最近想趁著還沒忘完,回顧一下,整理了點筆記,分享一下。

        如有錯的地方,歡迎大家怒噴。

2、學習

        我們就從最簡單的鏈表開始吧。

        鏈表其實跟數組有點像,都是一串相同類型的元素的集合,最大的不同點在於:數組是一片連續的空間,其中的元素可以通過下標來訪問,但刪除元素的時候有點麻煩,需要將該元素之後的元素都向前移動一個位置;而鏈表是通過指標來將一串元素連起來的,前一個元素中存有下一個元素的地址,這些元素不一定是連續的,所以訪問的時候不能使用下標,但插入和刪除的時候會簡單很多。

        對鏈表的操作無外乎增、刪、改、查,下面我們就來看一下這四種操作的具體步驟。

        假設是我們要操作的鏈表:

 

        查詢、修改元素:

 

        查詢和修改過程基本一樣,修改是先查詢在修改,所以就放在一起了,這裡我們可以看到,如果想查詢一個元素的話,必須從第一個元素開始掃描,直到找到這個元素為止,如果鏈表中有很多元素而恰好我們要查詢的元素又比較靠後,就比較耗時了,所以如果你的應用要做很多查詢操作的話,使用數組會更好,因為數組可以用下標來訪問,時間複雜度為O(1),效率秒殺鏈表。

 

        刪除元素:

 

        刪除元素很簡單,找到要刪除的元素,將上一個元素的Next指標指向要刪除元素的下一個位置即可。

 

        增加元素: 

 

        增加元素稍微複雜點,首先將A6的Next指標指向A4,然後再將A3原先指向A4的指標指向A6,這樣A6就插入到了A3到A4之間了。

        (由於單鏈表原理比較好理解,這裡就不提供代碼了。)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.