單鏈表的操作

2021-06-19 04:55:37 字數 1174 閱讀 4627

單鏈表是一種非常重要的資料結構,下面用c語言對單鏈表的操作做乙個簡單的總結:

typedef struct nodenode,*linklist;
1、單鏈表的建立:

建立乙個單鏈表,鍊錶裡面存放有十個偶數(2到20),有頭節點,頭節點不存放元素。

linklist createlinklist()

return head;

2、列印這個鍊錶除了頭節點以外的全部元素。

void printlist(linklist head)

}

3、在這個鍊錶中插入乙個節點,分別完成下面兩種情況:

(1)在第n個元素的後面插入這個節點,如果n的值大於鍊錶節點的個數,則將要插入的節點插入到鍊錶的最後。

(2)在元素值為n的節點後面插入新節點,若沒有元素n,則將此節點插入到鍊錶的最後。

情況(1):

void insertnode(linklist head, node *p, int n)

if( n >= i)

else

p->next = q->next;

q->next = p;

}}

情況(2)

void insertnode(linklist head, node*p, int n)

else

}

4、鍊錶的逆置(reverse)

分兩種情況

情況(1):要求頭節點不進行逆置

情況(2):頭節點進行逆置,演算法執行結束之後頭節點在鍊錶的結尾。

情況(1)的**如下:

void reverse(linklist head)

}

情況(2)的**如下:

linklist reverse(linklist head)

return new_head;

}

單鏈表的操作

1.定義單鏈表的介面函式 ifndef linklist h define linklist h typedef int elemtype typedef struct node node node initnode bool addnode node head,elemtype data 頭插法 ...

單鏈表的操作

pragma once extern c list node,list link 頭插建立鍊錶 list link create list head int n 尾插法建立鍊錶 list link creat list tail int n 獲取長度 int get list length list...

單鏈表的操作

單鏈表的頭插法 尾插法 遍歷 初始化 在位置i前插入元素 刪除位置i處的元素 include include typedef int itemvalue typedef struct node 鍊錶節點定義 linknode,plinknode 初始化單鏈表 void initiallinklist...