一、建立鍊錶、鍊錶的遍歷
將三個學生的資訊以鍊錶形式表達
#include
using
namespace std;
struct student_message //首先定義乙個結構體,包含名字、年齡、下乙個人的位址
;void
main()
;//3、定義第三個學生,這個節點是尾節點,不再指向下乙個節點
student_message p2=
;//2、定義第二個節點
student_message p1=
; student_message *head=
&p1;
//定義頭指標,頭指標指向第乙個節點的位址
while
(head!=
null
)//鍊錶的遍歷
}
二、鍊錶的查詢
如果想要找到jack的年齡,更改while迴圈體如下:
while
(head!=
null
) head=head-
>next;
}
三、鍊錶的插入和刪除
1、鍊錶的插入 分為三個步驟,以a、b、c三個節點為例,要插入d到a、b之間:
1) 定義d節點;
2)定義d節點的next為a節點的next;
3)定義a節點的next為d;
比如在上述程式中插入學生p4,修改**如下:
void
main()
;//方式1,定義p4節點,並將p4.next等於p1.next;
/*strcpy(p4.name,"kay");方式2,注意字元陣列定義要用strcpy()函式
p4.age=21;
p4.next=p1.next;*/
(p1.next)
=&p4;..
....
....
....
....
}
2、鍊錶的刪除 以a、b、c三個節點為例,刪除b,那麼就將a的next賦給c即可
...
....
....
....
....
....
....
....
....
....
....
... student_message *head=
&p1;
//定義頭指標,頭指標指向第乙個節點的位址
p1.next=
&p3;..
....
....
....
....
....
....
....
....
....
....
....
...
C 學習之鍊錶
1.1建立與遍歷鍊錶 includeusing namespace std struct student student head 定義頭結點 student create pend next null delete ps return head void showlist student head...
C 之鍊錶操作
1 鍊錶題 乙個鍊錶的結點結構 struct node typedef struct node node 1 已知鍊錶的頭結點head,寫乙個函式把這個鍊錶逆序 intel node reverselist node head 鍊錶逆序 p2 next p1 head p2 return head ...
易學c 鍊錶學習
通過 易學c 學習的鍊錶理解的總結 在書中對鍊錶的實現和操作做了乙個形象的描述,首先介紹鍊錶是乙個順序相連線的鏈條,類似於自行車車鏈,一環套一環,鍊錶是乙個單向可遍歷的,只能通過從頭開始,逐個遍歷的過程來實現鍊錶節點 node 的查詢過程。實現鍊錶,首先要明晰乙個節點的概念,乙個節點,首先要有乙個儲...