C語言版資料結構:[2]連結串列的建立。

來源:酷知科普網 2.4W

連結串列其實是線性表的連結儲存方式,這種方式下的儲存單元可以是連續的,也可以是不連續的。這裡我們主要討論連結串列的尾插法,頭插法和尾插法基本類似。座標為您分享。

操作方法

(01)一、連結串列的建立分為帶頭結點的頭插法和帶頭結點的尾插法,第一種方法插入順序和輸出順序是相反的。第二種方法插入順序和輸出順序是一致的。這裡我們主要介紹尾插法,頭插法基本類似。

C語言版資料結構:[2]連結串列的建立。

(02)二、首先對頭檔案、資料結構、連結串列結點結構等進行宣告。

(03)#include <stdio.h>#include <stdlib.h>#define null 0typedef struct snode{char *name;char *no;int score[5];}typedefdata;typedef struct node{typedefdata data;struct node *next;}linklist;

(04)三、首先介紹帶標頭檔案的尾插法建立連結串列。/*尾插法建立帶頭結點的單鏈表*/linklist *insert_new(){char flag;int x;char *na;char *num;int grade[5];linklist *head,*rear,*p;head = (struct node*)malloc(sizeof(linklist));//頭節點的空間分配rear = head;//頭尾相連進行初始化dowhile(flag != 'q');rear->next = null;return (head);}/*尾插法建立帶頭結點的單鏈表*/

C語言版資料結構:[2]連結串列的建立。 第2張

(05)四、頭插法建立連結串列。頭插法其實與尾插法的最大不同是每次新增的節點都是從head處新增,需要修改的就是for(x=0;x<5;x++)p->e[x] = grade[x];p->next = head->next;head->next = p;printf("nn continue?q for quit!");

(06)五、主函式的編寫。int main(){insert_new();return 0;}

C語言版資料結構:[2]連結串列的建立。 第3張

(07)六、測試我們只測試尾插法。

C語言版資料結構:[2]連結串列的建立。 第4張
C語言版資料結構:[2]連結串列的建立。 第5張
C語言版資料結構:[2]連結串列的建立。 第6張

特別提示

連結串列的建立並不複雜,需要注意的是記憶體申請的語句形式p = (struct node*)malloc(sizeof(linklist));

熱門標籤