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...