線性表、廣義表、多重鏈表
開始實習了,發現每天自我學習的時間好少好少,可能是自己懶吧,其實感覺有很多空閑時間自己可以學習只是自己沒有好好把握,以前學數據結構沒有好好學,現在補上吧!哈哈還是那句話欠的帳還是要還的。
什么叫線性表?什么叫廣義表?什么叫多重鏈表?
呃....
線性表
借用MOOC上ZJU數據結構姥姥的例子:一元多項式 f(x)=4x5+3x3+2x^2+x
節點:
coef : 系數 ,expon : 指數 ,next : 指向下一個節點
表示:
線性表:同一類型的數據元素組成的有序序列的線性結構。
廣義表
二元多項式:f(x,y)=8x12y6+5x12y2+3x3y2+x+y=(8y6+5y2)x12+3x3y^2+x+y
節點:
tag: 0 表示結點是只含有x,1表示該節點含有y
data: 存放系數和指數
sublist:指向存放y信息節點
next:指向下一個節點
表示:
廣義表是線性表的推廣,也是由n個元素組成的有序序列。與線性表的差別:線性表中的元素都是存儲單元素,而廣義表中存儲的元素不僅僅可以是單元素或另一個廣義表。
廣義表中結點的兩種可能:1、單元素,需要有個域來存儲改單元素的值。2、廣義表需要有個域來指向另一個鏈表
多重鏈表
比如上面的結點:
屬於2個鏈
多重鏈表:鏈表中的節點可能同時隸屬於多個鏈
多重鏈表中結點的指針域會有多個,但包含多個指針域的鏈表不一定是多重鏈表。如:雙向鏈表。
感謝MOOC ZJU 數據結構的老師