廣義表的首尾鍊錶儲存結構和擴充套件線性鍊錶儲存結構

2021-08-09 08:19:20 字數 418 閱讀 4082

//---廣義表的首尾鍊錶儲存結構---//

typedef enumelemtag; //atom == 0:原子,list == 1:字表

typedef struct glnodeptr;//ptr是表節點的指標域,ptr.hp和ptr.tp分別指向表頭和表尾

};}*glist //廣義表型別

//---廣義表的擴充套件線性鍊錶儲存結構---//

typedef enumelemtag; //atom == 0:原子,list == 1:字表

typedef struct glnode;

struct glnode *tp; //相當於線性鍊錶的next,指向下乙個元素節點

}*glist //廣義表型別(擴充套件的線性鍊錶)

廣義表的儲存結構

1 廣義表是線性表的推廣 2 線性表的n個元素都是單元素 3 廣義表中的元素不僅可以是乙個單元素,也可以是另乙個廣義表 結點的定義如下圖 typedef struct gnode glist struct gnode uregion glist next 指向下乙個結點 可以稍作改進 typedef...

鍊錶的應用 廣義表 多重鍊錶

廣義表 1 所謂廣義表就是線性表的推廣,怎麼說呢,以前線性表存的是乙個資料元素,現在呢是線性表的結點可以指向另乙個線性表,這就是廣義表啦 typedef struct gnode glist typedef struct gnode glist next gnode 多重鍊錶1 什麼是多重鍊錶,就是...

資料結構 廣義表的同層鍊錶結構

廣義表有乙個標誌位 代表後面放的是表還是原子節點 有三個域構成 typedef enum tag,tagp typedef struct nodeatomunion struct node tailp 指向下乙個節點 node,nodep void initialnode nodep l void ...