<pre name="code" class="cpp">#include <stdio.h>
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define INFEASIBLE -1
#define OVERFLOW -2
typedef char List;
int equal(List *L,int e)
{
int L_len,i;
L_len = strlen(L);
for(i = 0;i<L_len;i++)
{
if(e == *(L+i))
{
return 1;
}
}
return 0;
}
void lianhe(List *La, List *Lb)
{
//printf("%s\n", La);
//printf("%c\n",*Lb);
int La_len, Lb_len,i,foo;
La_len = strlen(La);
Lb_len = strlen(Lb);
List e;
for(i = 0;i<Lb_len;i++)
{
e = *(Lb+i);
//printf("%c\n",e);
//foo =equal(La,e);
//printf("%d\n", foo);
if(equal(La,e)==0)
{
La_len= strlen(La);
char *E = &e;
*(La+La_len) = *E;
*(La+La_len+1)=NULL;
}
}
}
int main(int argc, char *argv[])
{
List a[]={'1','2','3','4','5','8','9',0};
List b[]={'3','4','5','6','7','0',0};
printf("A = %s\n", a);
printf("B = %s\n", b);
lianhe(a,b);
printf("A & B = %s\n", a);
return 0;
}
數據結構學習筆記 算法2.1的具體實現,合併集合A,B
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.