第三週專案3求集合並集

2021-08-08 09:29:38 字數 3090 閱讀 4764

main.cpp

#include "list.h"

#include 

void

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

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

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

}  //用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;  

}  

hang.h

[cpp]

view plain

copy

"font-size:14px;"

>#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

#endif

hang.cpp

#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)"color:#ff6666;"

>

//引用,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)  

{  int

j;  

if(i<1 || i>l->length)  

//引數錯誤時返回false

return

false

;  i--;        //將順序表邏輯序號轉化為物理序號

e=l->data[i];  

for(j=i; jlength-1; j++) 

//將data[i..n-1]元素前移

l->data[j]=l->data[j+1];  

l->length--;              //順序表長度減1

return

true

;              

//成功刪除返回true

第三週專案3 求集合並集

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

第三週專案3 求集合並集

專案名稱 專案3 求集合並集 題目描述 標頭檔案list.h ifndef list h included define list h included define maxsize 50 include include typedef int elemtype typedef struct sql...

第三週 專案3 求集合並集

檔名稱 1 順序表list.cpp 2 順序表list.h 3 集合並集.cpp 作 者 林穎 完成日期 2016年9月16日 問題描述 假設有兩個集合 a 和 b 分別用兩個線性表 la 和 lb 表示,即線性表中的資料元素即為集合中的成員。設計演算法,用函式unionlist list la,l...