C單向連結串列增加新節點

時間 2022-03-23 21:04:59

1樓:許秀英生淑

假設單連結串列類的名字是

mylist

struct

mylist

假設頭結點是head(mylist*

head),那麼將新增結點分三種情況:

1.在連結串列最前面新增結點,也即head的後面新增bool

add_node_before_head(mylist*h,mylist*

node_to_add)

return

false;

}2.在連結串列的target_node後新增結點:

bool

add_node_after_target(mylist*target_node,mylist*

node_to_add)

return

false;

}3.在連結串列的結點尾新增結點

bool

add_node_at_end(mylist*h,mylist*

node_to_add)

return

false;

這三個函式的呼叫方式如下:

head=create_list();//這個函式你自己寫吧mylist*

p_node=new

mylist;

p_node->data=20;

add_node_before_head(head,p_node);

add_node_after_target(head->next,p_node);

add_node_at_end(head,p_node);

希望可以幫到你~

2樓:閉桂花戚雀

增加由p

指向的結點,即將

*p插入到結點

*s之後,2條語句就夠了:

p->next

=s->next;

//使結點

*p的指標域指向

*s的下一個結點

s->next=p;

//使結點

*s的指標域指向*p

3樓:聲美媛沐嫻

連結串列是一種簡單的鏈式儲存的資料結構

請參照資料結構相關的書籍,這就是帶表頭的單向連結串列的基本操作。

建議看一下嚴蔚敏版的《資料結構》一書,上有詳細說明,此處就忽略了

c語言 單向連結串列如何排序,C語言 單向連結串列如何排序?

問明 void link order stu p head stu pb,pf,temp pf p head if p head null 連結串列為空printf needn t order.n return if p head next null 連結串列有1個節點 printf only on...

C語言連結串列列印

那要看你的adddata 是怎麼構造的。如果你一定要用程式裡這種方式呼叫,那就把head的指標傳到adddata裡,即adddata head 假設adddata本身沒問題,且裡面記憶體在堆裡分配,是放在這個函式裡用malloc之類分配的,裡面所有對head的操作都用 head 來表示。這樣,dis...

編寫程式,建立帶有節點的單向連結串列,輸入字串,並按從小到

int main link head 連結串列 不帶頭節點 int n printf 輸入連結串列的長度n scanf d n printf 連續輸入 d個資料 以空格隔開 n head createlink n printf n原本連結串列的節點是 displink head linksort h...