單鏈表的操作

2021-10-07 15:48:26 字數 2548 閱讀 8098

typedef

struct lnode

lnode;

void

createlistr

(lnode*

& c,

int a,

int n)

//尾插法建立鍊錶

r->next =

null

;}

void

createlistr

(lnode*

& c,

int a,

int n)

//頭插法建立鍊錶

}*

void

insertlist

(lnode*

&c,int i,

int e)

//在第i個位置之前插入元素e,i從1開始if(

!p || j > i -1)

return

; lnode* s =

(lnode*

)malloc

(sizeof

(lnode));

s->data = e;

s->next = p-

>next;

p->next = s;

return

;}

void

deletelist

(lnode*

& c,

int i,

int&k)

//刪除第i個節點,並用k返回其值if(

!p->next || j > i -1)

return

; lnode* q;

q = p-

>next;

p->next = q-

>next;

k = q-

>data;

free

(q);

return

;}

#include

using

namespace std;

typedef

struct lnode

lnode;

void

createlistr

(lnode*

& c,

int a,

int n)

//尾插法建立鍊錶

r->next =

null;}

/*void createlistr(lnode*& c, int a, int n) //頭插法建立鍊錶

}*/void

insertlist

(lnode*

&c,int i,

int e)

//在第i個位置之前插入元素e,i從1開始if(

!p || j > i -1)

return

; lnode* s =

(lnode*

)malloc

(sizeof

(lnode));

s->data = e;

s->next = p-

>next;

p->next = s;

return;}

void

deletelist

(lnode*

& c,

int i,

int&k)

//刪除第i個節點,並用k返回其值if(

!p->next || j > i -1)

return

; lnode* q;

q = p-

>next;

p->next = q-

>next;

k = q-

>data;

free

(q);

return;}

void

showlist

(lnode* c)

cout << endl;

}int

main()

;createlistr

(c, r,6)

;showlist

(c);

cout <<

"插入5之後"

<< endl;

insertlist

(c,5,5

);showlist

(c);

cout <<

"刪除7之後"

<< endl;

int k =0;

deletelist

(c,7

, k)

;showlist

(c);

cout <<

"刪除的元素為:"

單鏈表的操作

單鏈表是一種非常重要的資料結構,下面用c語言對單鏈表的操作做乙個簡單的總結 typedef struct nodenode,linklist 1 單鏈表的建立 建立乙個單鏈表,鍊錶裡面存放有十個偶數 2到20 有頭節點,頭節點不存放元素。linklist createlinklist return ...

單鏈表的操作

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...