/**
標頭檔案stu.h
@jeasn168
*/#include#include#define maxs 50
typedef struct
stu;
//輸出stu
void dispstu(const stu &s)
//比較stu型別
int isequal(const stu &a,const stu &b)
/**單鏈表linklist.cpp
@jeasn168
*/#include#include#include"stu.h"
typedef stu elemtype;
//定義單鏈表結構
typedef struct lnode
linklist;
//頭插法建立單鏈表
void createlistf(linklist *&l,const elemtype *a,const int n)}
//尾插法建立單鏈表
void createlistr(linklist *&l,const elemtype *a,const int n)
r->next=null;
}//判斷鍊錶是否為空
int listempty(linklist *l)
//輸出單鏈表
void displist(linklist *l)}
//銷毀單鏈表
void destroylist(linklist *&l)
}free(p);}
//插入元素
int listinsert(linklist *&l,const int i,const elemtype &e)
if(j!=i)
else
return 1;}
//刪除給定位置元素
int listdelete(linklist *&l,const int i,elemtype &e)
if(j!=i)
else
return 1;}
//按元素的值查詢元素位置
int locteelem(linklist *l,const elemtype &e)
if(p->next==null)
else
} //求鍊錶長度
int listlength(linklist *l)
return len;}
//求單鏈表中指定位置的元素
int getelem(linklist *l,const int i,elemtype &e)
while(j!=i&&p!=null)
e=p->data;
printf("查詢的元素為:\n");
dispstu(e);
return 1; }
int main()
,,,,};
stu st1=,st2;
linklist *stulist;
int len=0;
//頭插法建立學生單鏈表
printf("頭插法建立學生單鏈表:\n");
createlistf(stulist,student,5);
printf("*********************\n");
displist(stulist);
destroylist(stulist);
//尾插法建立學生單鏈表
printf("尾插法建立學生單鏈表:\n");
createlistr(stulist,student,5);
printf("*********************\n");
displist(stulist);
if(listinsert(stulist,10,st1))
else
printf("插入失敗!\n");
printf("*********************\n");
displist(stulist);
listdelete(stulist,1,st2);
//查詢給定元素在單鏈表中的位置
locteelem(stulist,st2);
printf("刪除元素的學生單鏈表:\n");
printf("*********************\n");
displist(stulist);
//查詢給定位置元素
getelem(stulist,12,st2);
//查詢給定元素在單鏈表中的位置
locteelem(stulist,st2);
len=listlength(stulist);
printf("鍊錶長度為:%d\n",len);
destroylist(stulist);
return 0;
}
資料結構 單鏈表的各種操作08
鍊錶 1.建立鍊錶 2.列印鍊錶 void printlist tylist m phead printf n n 3.銷毀鍊錶 4.按值插入元素,在某一元素前 5.按值刪除元素 6.鍊錶逆置 void reverselist tylist m phead tylist m ppre m phead...
資料結構單鏈表的各種操作C 實現
該程式實現了線性表的鏈式儲存結構之單鏈表和各項操作 include include using namespace std 線性表和一些基礎的定義 define elemtype int 表中資料元素型別 typedef struct nodelnode,linklist define ok 1 d...
資料結構 單鏈表的操作
單鏈表的操作 輸入一組整型元素序列,使用尾插法建立乙個帶有頭結點的單鏈表。實現該線性表的遍歷。在該單鏈表的第i個元素前插入乙個整數。刪除該單鏈表中的第i個元素,其值通過引數將其返回。建立兩個按值遞增有序的單鏈表 將他們合併成乙個按值遞減有序的單鏈表。要求利用原來的儲存空間 這是我資料結構老師留下的實...