#include
#include
#define list_init_size 100
#define listincrement 10
typedef struct
{ int *elem;
int length;
int listsize;
} sqlist;
int initsqlist (sqlist *l)//初始化
{
l->elem=(int *)malloc(list_init_size*sizeof(int));
\x09if(!l->elem)
\x09\x09exit(0);
\x09l->length=0;
\x09l->listsize=list_init_size;
\x09return 0;
}
int listinsert_sq(sqlist *l,int i,int e)//插入一個(gè)元素
{
\x09int *p,*q;
\x09if(il->length+1)
\x09\x09exit(0);
\x09q=&(l->elem[i-1]);
\x09for(p=&(l->elem[l->length-1]);p>=q;--p)
\x09\x09*(p+1)=*p;
\x09*q=e;
\x09++l->length;
\x09return 0;
}
void add(sqlist *l,int e)//添加到最后
{
listinsert_sq(l,l->length+1,e);
}
void disp(sqlist *l)
{
int i;
for(i=0;ilength;i++)
\x09 printf("%d ",l->elem[i]);
printf("\n");
}
int find(sqlist *l,int e)//查找元素是否存在
{
int i,t=-1;
for(i=0;ilength;i++)
\x09if(l->elem[i]==e)
\x09{t=i;break;}
return t;
}
void opt_1(sqlist *la,sqlist *lb)//(相同元素不保留)
{
int i,j;
for(i=0;ilength;i++)
{
\x09j = find(la,lb->elem[i]);
if(j==-1)
\x09\x09listinsert_sq(la,la->length+1,lb->elem[i]);
}
}
void sort(sqlist *la) //排序
{
\x09int i,j,k;
\x09for(i=0;ilength;i++)
\x09\x09for(j=i+1;jlength;j++)
\x09\x09{
\x09\x09 if(la->elem[i]>la->elem[j])
\x09\x09 {
\x09\x09\x09 k = la->elem[i];
\x09\x09\x09 la->elem[i] = la->elem[j];
\x09\x09\x09 la->elem[j] = k;
\x09\x09 }
\x09\x09}
}
void opt_2(sqlist *la,sqlist *lb)//(相同元素保留)
{
int i,j;
for(i=0;ilength;i++)
{
\x09j = find(la,lb->elem[i]);
if(j!=-1)
\x09\x09listinsert_sq(la,j+1,lb->elem[i]);
\x09else
\x09\x09listinsert_sq(la,la->length+1,lb->elem[i]);
}
sort(la);
}
int main()
{
\x09sqlist La,Lb;
\x09initsqlist(&La);
add(&La,3);
add(&La,5);
add(&La,8);
add(&La,11);
\x09initsqlist(&Lb);
add(&Lb,2);
add(&Lb,6);
add(&Lb,8);
add(&Lb,9);
add(&Lb,11);
add(&Lb,15);
add(&Lb,20);
\x09disp(&La);
\x09disp(&Lb);
\x09opt_1(&La,&Lb);//操作(相同元素不保留)
\x09disp(&La);
\x09La.length = 0; //重新初始化La
add(&La,3);
add(&La,5);
add(&La,8);
add(&La,11);
\x09opt_2(&La,&Lb);//操作(相同元素保留)
\x09disp(&La);
\x09
\x09return 0;
}
輸出:
3 5 8 11
2 6 8 9 11 15 20
3 5 8 11 2 6 9 15 20
2 3 5 6 8 8 9 11 11 15 20
數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)設(shè)有線性表LA(3,5,8,110)和LB(2,6,8,9,11,15,20)求新集合?
數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)設(shè)有線性表LA(3,5,8,110)和LB(2,6,8,9,11,15,20)求新集合?
1:若LA和LB分別表示兩個(gè)集合A和B,求新集合A=A∪B(相同元素不保留)預(yù)測(cè)輸出LA=(3,5,8,11,2,6,9,15,20)
2:若LA和LB分別表示兩個(gè)集合A和B,求新集合A=A∪B(相同元素保留)預(yù)測(cè)輸出LA=(2,3,5,6,8,8,9,11,11,15,20)
數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)設(shè)有線性表LA(3,5,8,11)和LB(2,6,8,9,11,15,20)求新集合
1:若LA和LB分別表示兩個(gè)集合A和B,求新集合A=A∪B(相同元素不保留)預(yù)測(cè)輸出LA=(3,5,8,11,2,6,9,15,20)
2:若LA和LB分別表示兩個(gè)集合A和B,求新集合A=A∪B(相同元素保留)預(yù)測(cè)輸出LA=(2,3,5,6,8,8,9,11,11,15,20)
數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)設(shè)有線性表LA(3,5,8,11)和LB(2,6,8,9,11,15,20)求新集合
其他人氣:490 ℃時(shí)間:2020-03-22 18:35:54
優(yōu)質(zhì)解答
我來(lái)回答
類(lèi)似推薦
- 線性表LA=(3,5,8,11),LB=(2,6,8,9,11,15,20),LA和LB代表兩個(gè)集合A.B,
- 假設(shè)兩線性表LA和LB分別表示兩集合A和B,要求新集合A=A并B.
- 數(shù)據(jù)結(jié)構(gòu)算法2.1兩個(gè)線性表LA和LB,求新的集合那個(gè),C語(yǔ)言版完整程序怎么寫(xiě)啊
- 數(shù)據(jù)結(jié)構(gòu)算法實(shí)現(xiàn):利用兩個(gè)線性表LA和LB分別表示兩個(gè)集合A和B,現(xiàn)要求一個(gè)新的集合A=A并B.
- 請(qǐng)用C語(yǔ)言編程實(shí)現(xiàn) 1.已知線性表LA和LB中的數(shù)據(jù)元素按值非遞增有序排列,現(xiàn)要求將LA和LB歸并為一個(gè)新
- 四通八達(dá)中“達(dá)”什么意思
- 天地不仁,以萬(wàn)物為芻狗.
- 用血球計(jì)數(shù)板計(jì)算酵母細(xì)胞總數(shù):對(duì)稀釋100倍后的酵母菌懸液計(jì)數(shù),若80小格中細(xì)胞數(shù)
- 富者乞羊 譯文
- 高中數(shù)學(xué)課程中的“函數(shù)”的結(jié)構(gòu)脈絡(luò)
- 描寫(xiě)水的優(yōu)美句子
- 試證明:對(duì)于任意大于4的合數(shù)p,(p-2)!能被p整除.或舉出反例.
猜你喜歡
- 1世博會(huì)中國(guó)館的太陽(yáng)能光伏發(fā)電系統(tǒng) 年均提供電能為1.08*10^13J,這意味著每年節(jié)約標(biāo)準(zhǔn)煤為( )噸(設(shè)標(biāo)準(zhǔn)煤完全燃燒,q煤=3.0*10^7J/kg)
- 2l理發(fā)師翻譯成英語(yǔ)
- 3在下列幾種現(xiàn)象中,系統(tǒng)動(dòng)量守恒的是
- 4王老師在新華書(shū)店購(gòu)買(mǎi)了《童話精選》和《科學(xué)家的故事》一共花了116元,童話每本2
- 51 she also tried to teach him __ to be quiet because other people wanted to rest.A when B where
- 6求滿(mǎn)足條件:頂點(diǎn)在原點(diǎn),關(guān)于x軸對(duì)稱(chēng),并且經(jīng)過(guò)點(diǎn)M(2,-4)的拋物線的標(biāo)準(zhǔn)方程,并求出此拋物線的準(zhǔn)線方程.
- 7“鐵錘錘碗錘不碎”.這句話覺(jué)得荒謬的理由是什么?覺(jué)得有道理的理由是什么?
- 8如圖,已知直線L1平行L2,且L3和L1、L2分別交于A、B兩點(diǎn),點(diǎn)P在直線AB上.
- 9什么無(wú)間
- 10333分之33乘101怎樣簡(jiǎn)便計(jì)算
- 11用總分總的形式寫(xiě)一篇作文
- 121.What do you not like?還是What don't you like?Why do you not like?還是Why don't you like?