第3周專案3 求集合並集

2021-07-22 19:46:00 字數 3110 閱讀 2571

問題及**:

[cpp]view plain

copy

/**檔名稱:peng.cbp

*作    者:陳朋

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

*版 本 號:v1.0

**問題描述:求集合並集

*輸入描述:無

*程式輸出:依據各個函式而定*/

main.cpp:

[cpp]view plain

copy

#include "list.h"

#include 

//用main寫測試**

intmain()  

;  createlist(sq_a, a, 6);  

printf("la: "

);  

displist(sq_a);  

elemtype b[6]= ;  

createlist(sq_b, b, 5);  

printf("lb: "

);  

displist(sq_b);  

unionlist(sq_a, sq_b, sq_c);  

printf("lc: "

);  

displist(sq_c);  

return

0;  

}  

list.h;

[cpp]view plain

copy

#ifndef list_h_included

#define list_h_included

#define maxsize 50

typedef

intelemtype;  

typedef

struct

sqlist;  

void

createlist(sqlist *&l, elemtype a, 

intn);

//用陣列建立線性表

void

initlist(sqlist *&l);

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

void

destroylist(sqlist *&l);

//銷毀線性表destroylist(l)

bool

listempty(sqlist *l);

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

intlistlength(sqlist *l);

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

void

displist(sqlist *l);

//輸出線性表displist(l)

bool

getelem(sqlist *l,

inti,elemtype &e);

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

intlocateelem(sqlist *l, elemtype e);

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

bool

listinsert(sqlist *&l,

inti,elemtype e);

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

bool

listdelete(sqlist *&l,

inti,elemtype &e);

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

void

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

#endif // list_h_included

list.cpp:

[cpp]view plain

copy

#include 

#include 

#include "list.h"

//用陣列建立線性表

void

createlist(sqlist *&l, elemtype a, 

intn)  

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

void

initlist(sqlist *&l)   

//引用型指標

//銷毀線性表destroylist(l)

void

destroylist(sqlist *&l)  

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

bool

listempty(sqlist *l)  

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

intlistlength(sqlist *l)  

//輸出線性表displist(l)

void

displist(sqlist *l)  

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

bool

getelem(sqlist *l,

inti,elemtype &e)  

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

intlocateelem(sqlist *l, elemtype e)  

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

bool

listinsert(sqlist *&l,

inti,elemtype e)  

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

bool

listdelete(sqlist *&l,

inti,elemtype &e)  

void

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

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

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

}   

執行結果:

知識總結:演算法庫很重要

學習心得:多積累一些演算法

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