第3周專案3 求集合並集

2021-07-22 18:36:26 字數 2879 閱讀 1898

/*     

*檔名稱:專案3.cbp     

*作    者:孟琪琪     

*完成日期:2023年9月16日     

*版 本 號:v1.0     

*     

*問題描述:假設有兩個集合 a 和 b 分別用兩個線性表 la 和 lb 表示,即線性表中的資料元素即為  

集合中的成員。設計演算法,用函式unionlist(list la, list lb, list &lc )函式實現該  

*輸入描述:各個集合    

*程式輸出:合併後的集合   

*/   

#ifndef list_h_included  

#define list_h_included  

#define maxsize 50  

#include #include typedef int elemtype;  

typedef struct  

sqlist;  

void unionlist(sqlist *la, sqlist *lb, sqlist *&lc);//求合集  

void createlist(sqlist *&l, elemtype a, int n);//用陣列建立線性表  

void initlist(sqlist *&l);//初始化線性表initlist(l)  

void destroylist(sqlist *&l);//銷毀線性表destroylist(l)  

bool listempty(sqlist *l);//判定是否為空表listempty(l)  

int listlength(sqlist *l);//求線性表的長度listlength(l)  

void displist(sqlist *l);//輸出線性表displist(l)  

bool getelem(sqlist *l,int i,elemtype &e);//求某個資料元素值getelem(l,i,e)  

int locateelem(sqlist *l, elemtype e);//按元素值查詢locateelem(l,e)  

bool listinsert(sqlist *&l,int i,elemtype e);//插入資料元素listinsert(l,i,e)  

bool listdelete(sqlist *&l,int i,elemtype &e);//刪除資料元素listdelete(l,i,e)#endif // list_h_included  

#endif  

功能函式檔案list.cpp

[cpp] view plain copy

#include "list.h"  

//求合集  

void unionlist(sqlist *la, sqlist *lb, sqlist *&lc)  

lena=listlength(la);         //求線性表la的長度  

for (i=1; i<=listlength(lb); i++)  

}    

//以下為演算法庫功能函式  

//用陣列建立線性表  

void createlist(sqlist *&l, elemtype a, int n)  

//初始化線性表initlist(l)  

void initlist(sqlist *&l)   //引用型指標  

//銷毀線性表destroylist(l)  

void destroylist(sqlist *&l)  

//判定是否為空表listempty(l)  

bool listempty(sqlist *l)  

//求線性表的長度listlength(l)  

int listlength(sqlist *l)  

//輸出線性表displist(l)  

void displist(sqlist *l)  

//求某個資料元素值getelem(l,i,e)  

bool getelem(sqlist *l,int i,elemtype &e)  

//按元素值查詢locateelem(l,e)  

int locateelem(sqlist *l, elemtype e)  

//插入資料元素listinsert(l,i,e)  

bool listinsert(sqlist *&l,int i,elemtype e)  

//刪除資料元素listdelete(l,i,e)  

bool listdelete(sqlist *&l,int i,elemtype &e)  

測試函式main.cpp

[cpp] view plain copy

#include "list.h"  

//用main寫測試**  

知識點總結:此演算法加深了我們對實際問題的求解。

學習心得:要真正理解每段**的意義。

第3周專案3 求集合並集

問題 檔名稱 專案3.cbp 作 者 王聰 完成日期 2015年9月17日 版 本 號 v1.0 問題描述 假設有兩個集合 a 和 b 分別用兩個線性表 la 和 lb 表示,即線性表中的資料元素即為 集合中的成員。設計演算法,用函式unionlist list la,list lb,list lc...

第3周 專案3 求集合並集

檔名稱 1.pp 完成日期 2015年9月18日 問題描述 求集合並集 include include define maxsize 50 typedef int elemtype typedef struct sqlist void createlist sqlist l,elemtype a,i...

第3周專案3 求集合並集

檔名稱 專案3 求集合並集.cpp 作 者 陳勝男 完成日期 2015年10月9日 版 本 號 v1.0 問題描述 假設有兩個集合 a 和 b 分別用兩個線性表 la 和 lb 表示,即線性表中的資料元素即為集合中的成員。設計演算法,用函式unionlist list la,list lb,list...