單鏈表的基本操作

2021-04-12 22:44:13 字數 1424 閱讀 8711

#include

#include

typedef struct lnodelnode,*linklist;//定義單鏈表

void create_linklist(linklist &l)

//(逆序實現)

*/linklist q=l;

for(int i=1;i<=5;i++)

//(正序實現)

}//初始化單鏈表

void printf_linklist(linklist l)

}//輸出單鏈表

void linklist_empty(linklist l)

//判斷單鏈表是不是空表

void clear_linklist(linklist l)

//將單鏈表置空

void getelem_linklist(linklist l,int i,int &e)

if(!p||j>i) printf("error/n");//第i個元素不存在

e=p->data;//取第i個元素

}//取單鏈表中第i個元素

void delete_linklist(linklist &l,int i,int &e)

if(!p->next||j>i-1) printf("error1/n");

linklist q=p->next;

p->next=q->next;

e=q->data;//儲存刪除的元素

free(q);//釋放刪除的空間

}//刪除單鏈表中第i個元素

void insert_linklist(linklist &l,int i,int e)

if(!p||j>i-1) printf("error2/n");

linklist s=(linklist)malloc(sizeof(lnode));

s->data=e;

s->next =p->next ;

p->next =s;

}//在單鏈表的第i個元素前插入e

int length_linklist(linklist l)

return j;

}//求單鏈表中元素個數

void priorelem(linklist l,int cur_e,int &pre_e)

}if(flag==0) printf("無前驅/n");

}}//求前驅

void nextelem(linklist l,int cur_e,int &next_e)

}if(flag==0) printf("無後繼/n");

}}//求後繼

int locate_linklist(linklist l,int e)

if(p->data==e) return j;

else

if(!p)

}//定位

main()

單鏈表基本操作

include include include include includeusing namespace std typedef struct node node,plinklist plinklist createfromhead node pstnode node malloc sizeof...

單鏈表基本操作

單鏈表的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include typedef int elemtype 定義結點型別 typedef struct node node,linkedlist 單鏈表的初始化 linkedlist...

單鏈表基本操作

include using namespace std define namelenth 20 define ok 0 define error 1 typedef struct flagnode node 生成結點 inline node newnode 銷毀化煉表 void destroylin...