數據結構一(線性表)

緒論中我們大體介紹了數據結構的概念,接下來我們就從邏輯結構具體介紹幾種結構。
我們知道數據結構分爲邏輯結構、存儲結構、數據的運算。既然我們從邏輯結構方面具體介紹各個數據結構,那麼接下來,我們只用掌握它的存儲結構和基本操作運算就好啦。
首先介紹的是線性結構中的線性表。
一、存儲結構

  • 順序存儲結構:不多介紹了。
  • 單鏈表/線性鏈表:(1)數據元素ai的存儲結構稱爲結點,包括data域和next域,並且單鏈表還有一個頭指針L,指向第一個結點的數據域(2)有的鏈表還會有頭結點,在鏈表的第一個結點之前增設一個頭結點,頭指針指向頭結點,頭結點的數據域可以不儲存任何信息,也可以存儲如線性表的長度類似信息;指針域存儲首元結點的位置。頭結點的作用:使在鏈表中第一個位置的操作與其他位置一致,無特殊處理,統一空表與非空表的操作。
  • 循環單鏈表:分爲頭指針L的循環鏈表和尾指針r的循環鏈表
    (1)頭指針:最後一個結點的指針域指向頭結點
    (2)尾指針:尾指針指向頭結點
  • 雙向鏈表:data,*prior,*next
  • 雙向循環鏈表:頭結點的prior指向最後一個節點
    p的next\prior指向的都是結點,p s本身就是節點
    當插入或刪除一個結點時,考慮被刪結點的後繼的前驅和前驅的後繼
    單鏈表的存儲結構都一樣,雙向鏈表的也一樣,只是循環與否的操作不一樣

二、數據操作
單鏈表和循環鏈表的操作基本一致,只是循環條件從p=NULL,變成了p=L
下面以單鏈表爲例
在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章