建立雙鏈表(頭插法)

2021-10-11 17:03:38 字數 634 閱讀 4484

雙鏈表儲存結構:

要建立雙鏈表,首先要明白雙鏈表的儲存結構定義:

typedef

struct dlinklist

思想:

從乙個空表開始,讀取陣列a中的元素,生成新節點。將讀取在節點的資料域,然後將節點插入到當前鍊錶的表頭上,在頭結點後,首結點之前。 直到結束為止

思路:

1.建立乙個頭結點 l 並將前驅指標和後繼指標都置為零

2.通過for迴圈,將乙個個元素讀取,並儲存資料域中,並插入到鍊錶中。

總結:

這裡有兩個指標域,與單鏈表不同(只有乙個指標域),所以這裡要改動四處,前後各兩個(單鏈表只改動兩個)

c**實現:

void

createdlistf

(dlinklist *

& l,

int a,

int n)

l->next = s;

//這兩個為前驅指標的

s->prior = l;

}}

建立迴圈雙鏈表(頭插法)

該方法從乙個空表開始,讀取陣列a中元素,生成新節點,將讀取的資料存在該節點的資料域中,然後將該新節點插入到當前節點的表頭上,直到結束為止。雙鏈表的儲存結構 typedef strcut dlinklist思路 1.建立頭結點l,這裡是迴圈鍊錶,注意表頭和表尾是相連的 2.通過for迴圈,建立新節點。...

建立單鏈表(頭插法 尾插法)

1 頭插法建立單鏈表 生成的鍊錶中結點的順序與輸入的順序相反 頭插法建立單鏈表 status createlist l linklist l,int n return ok 2 尾插法建立單鏈表 與輸入的順序相同 尾插法建立單鏈表 status createlist tail linklist l,...

建立單鏈表 頭插法與尾插法

建立單鏈表有兩種方式 頭插法與尾插法 尾插法是在鍊錶的結尾增加新的節點 頭插法是插入頭節點後面,剩餘節點前面 步驟需要新建乙個尾節點tail,初始head tail 建立新的節點new,連線到尾節點,tail.next new 尾節點後移,tail new q 為什麼要加新的節點?a 因為head的...