初學單鏈表

2021-07-22 21:17:16 字數 1016 閱讀 6435

初學單鏈表,還有很多不懂的地方,只能先按照課本上慢慢碼程式了,╮(╯▽╰)╭,願老天懂得我的心酸。。。

typedef struct node\\定義單鏈表結點

slnode;

void listinitiate(slnode **head)\\單鏈表的初始化,並不懂為什麼要有兩個星號

int listlength(slnode *head)\\求鍊錶的長度,應該是指鍊錶裡面存放資料的個數,形參是頭節點的指標,而指標又是尼瑪什麼鬼啊?

return size;

}int listinsert(slnode *head,int i,datatype x)\\形參到底是什麼啊,什麼時候要寫成形參?

if(j!=i-1)

q=(slnode *)malloc(sizeof(slnode));\\給q申請乙個動態的儲存空間

q->data=x;\\在q的地方插入x,x為乙個datatype型別的數

q->next=p->next;\\先在p的後面連一根線給q

p->next=q;\\再連p和q

return 1;

}int listdelete(slnode *head,int i,datatype *x)

if(j!=i-1)

s=p->next;

*x=s->data;

p->next=p->next->next;

free(s);

return 1;

}int listget(slnode *head,int i,datatype *x)

if(j!=i)

*x=p->data;

return 1;

}void destroy(slnode **head)

*head=null;

}

單鏈表(合併單鏈表)

單鏈表遍歷 單鏈表遍歷是從單鏈表頭指標head開始訪問,沿著next指標所指示的方向依次訪問每乙個結點,且每個結點只能訪問依次,直到最後乙個結點為止。遍歷時注意,不要改變head指標的指向。因此一般設定另外的乙個指標變數如p,p從head開始依次訪問乙個結點,直到鍊錶結束,此時p null,完成依次...

單鏈表之排序單鏈表

package list public class sortedsinglylist extends singlylist 將values陣列中的所有物件按值大小插入 public sortedsinglylist t values 過載深拷貝,由單鏈表構建排序單鏈表 public sortedsi...

單鏈表 雙鏈表

實現乙個單鏈表,鍊錶初始為空,支援三種操作 1 向煉表頭插入乙個數 2 刪除第k個插入的數後面的數 3 在第k個插入的數後插入乙個數 現在要對該鍊錶進行m次操作,進行完所有操作後,從頭到尾輸出整個鍊錶。注意 題目中第k個插入的數並不是指當前鍊錶的第k個數。例如操作過程中一共插入了n個數,則按照插入的...