資料結構 單鏈表基本操作

2021-10-18 10:36:57 字數 1881 閱讀 2004

實現單鏈表的初始化,頭插法建表,尾插法建表,查詢元素,插入元素,刪除元素等功能

#include

using

namespace std;

#define elemtype char

typedef

struct node

node,

*linklist;

//初始化單鏈表

void

initlist

(linklist *l)

//頭插法建表

void

createfromhead

(linklist l)

else

flag=0;

}}//尾插法建表

void

createfromtail

(linklist l)

else}}

//按序號查詢

node*

get(linklist l,

int i)

p=l;

j=0;

while

((p-

>next!=

null)&&

(j(i==j)

return p;

else

}//按值查詢,返回它在鍊錶中的位置

intlocate

(linklist l,elemtype key)

else

break;}

return loc;

}//求鍊錶長度

intlen

(linklist l)

return j;

}//插入操作

void

insert

(linklist l,

int i,elemtype e)

if(pre==

null

) s=

(node *

)malloc

(sizeof

(node));

s->data=e;

s->next=pre-

>next;

pre-

>next=s;

return;}

//刪除第i個元素

void

delete

(linklist l,

int i,elemtype *e)

pre=l;

while

(pre-

>next!=

null

&&kif(pre-

>next==

null

) r=pre-

>next;

pre-

>next=r-

>next;

*e = r-

>data;

free

(r);

return;}

void

show

(linklist l)

cout<

}int

main()

if(op==1)

else

if(op==2)

else

if(op==3)

else

if(op==4)

else

if(op==5)

else

if(op==6)

cout<<

"你的操作:";}

while

(cin>>op)

;return0;

}

效果展示:

資料結構 單鏈表的基本操作

最近正好在複習資料結構,鍊錶作為比較重要的資料結構,特地自己實現了一遍。首先我們要理解幾個概念 1 鏈式儲存是最常用的儲存方式之一,可以表示線性和非線性的資料結構。2 按照鏈式儲存的線性表簡稱為鍊錶。3 單鏈表是一種鏈式訪問的資料結構,用一組位址任意的儲存單元來存放線性表中的資料元素。4 鍊錶由節點...

《資料結構》單鏈表基本操作實現

define ok 1 define error 1 typedef int elemtype typedef int status typedef struct node lnode,linklist 構造空表 status initlist linklist l void creatlist l...

資料結構2 單鏈表基本操作

單鏈表操作 初始化 建立單鏈表 尾插 判空 求長度 取第i個元素 查詢某元素位序 插入 刪除 include include define ok 1 define error 0 typedef int status typedef int elemtype typedef struct lnode...