資料結構 鍊錶

2021-07-24 22:18:56 字數 1287 閱讀 9584

一、鍊錶

概念:線性表的鏈式儲存結構,我們叫做鍊錶----單向鍊錶

帶頭結點的單向鍊錶

[2]尾結點:指標域預設為null,作為鍊錶結束的標誌。

二、資料型別的設計

typdef int datatype; //資料域儲存資料的型別

typedef struct node linknode;

三、常用操作步驟

<1>為頭結點在堆區分配空間,head->next = null;

linknode *create_empty_linklist()

head->next = null;

return head;

}<2>頭插法,每次在頭結點後插入資料

int insert_head_linklist(linknode *head,datatype data)

<3>輸出鍊錶中所有的資料

int print_linklist(linknode *head)

<5>尾插法,每次在尾結點後插入資料

void insert_tail_linklist(linknode *head,datatype data)

<6>有序插入,按照一定的順序在鍊錶中插入我們的資料(從小到大)

void insert_order_linklist(linknode *head,datatype data)

<7>//刪除相同資料的結點。

int delete_samedata_node(linknode *head,datatype data)

//9.大家來實現鍊錶的逆置。

//思路: 從第二個有效資料開始,依次把資料向後頭結點後

//插入,插入完畢之後,第乙個有效資料的結點就是

//我們最後的乙個結點。

int reverse_linklist(linknode *head)

//8.刪除鍊錶中所有的資料

int cleanup_linklist(linknode *head)

int main()

;for(i = 0;i < sizeof(a)/sizeof(a[0]);i++)

print_linklist(head);

delete_samedata_node(head,20);

print_linklist(head);

reverse_linklist(head);

print_linklist(head);

cleanup_linklist(head);

return 0;

}

資料結構 鍊錶

鍊錶 what 就是一張鏈式儲存的表,是一種資料結構,是基礎,所以還是不要想有什麼用。具體呢?在c中就用結構體實現物件描述,然後通過函式來實現各個基本操作 c 則用類來表述,c中的結構體就可以看成c 中的類,然後通過類封裝各個操作步驟。這些操作實現後就需要 來測試,號稱demo,就是main函式裡面...

資料結構 鍊錶

鍊錶中的資料是以節點來表示的,每個結點的構成 元素 資料元素的映象 指標 指示後繼元素儲存位置 元素就是儲存資料的儲存單元,指標就是連線每個結點的位址資料。鍊錶的結點結構 data next data域 存放結點值的資料域 next域 存放結點的直接後繼的位址 位置 的指標域 鏈域 以 結點的序列 ...

資料結構 鍊錶

一般的建立線性鍊錶有兩種 1.正序法 需要三個指標,head作為頭指標,pre作為前乙個指標,cur作為當前指標用來建立空間 2.倒序法,利用指標的插入,只需要兩個指標,不斷的往頭指標後插入新空間,不過插入的越早,離頭指標越遠,也就越後面輸出 1.線性鍊錶的建立及查詢刪除 include inclu...