在鏈式存儲方式中,要求每個結(jié)點由兩部分組成:一部分用于存放數(shù)據(jù)元素值,稱為數(shù)據(jù)域,另一部分用于存放指針,稱為指針域。其中指針用于指向該結(jié)點的前一個或后一個結(jié)點(即前件或后件)。
鏈式存儲方式既可用于表示線性結(jié)構(gòu),也可用于表示非線性結(jié)構(gòu)。
(1)線性鏈表
線性表的鏈式存儲結(jié)構(gòu)稱為線性鏈表。
在某些應(yīng)用中,對線性鏈表中的每個結(jié)點設(shè)置兩個指針,一個稱為左指針,用以指向其前件結(jié)點;另一個稱為右指針,用以指向其后件結(jié)點。這樣的表稱為雙向鏈表。
(2)帶鏈的棧
棧也是線性表,也可以采用鏈式存儲結(jié)構(gòu)。帶鏈的??梢杂脕硎占嬎銠C存儲空間中所有空閑的存儲結(jié)點,這種帶鏈的棧稱為可利用棧。