P19
- 原子类型:不可以再分解的基本类型,例如整型、浮点型、字符型等。
- 结构类型:由若干个类型组合而成,是可以再分解的,例如整型数组是由若干整型数据组成的。
- 抽象数据类型的定义仅取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关, 而且,抽象数据类型不仅仅指那些已经定义并实现的数据类型,还可以是计算机编程者在设计软件程序时自己定义的数据类型。
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
这是union两个线性表的并集:
基本思路:
- 从线性表Lb中依次取得每个元素
- 依据其值在线性表La中进行查访(判断是否存在或者相等)
- 若不存在,则插入之
// La表示A集合,Lb表示B集合。
void unionL(List *La, list Lb)//将所有在线性表“Lb”中但不在“La中”的数据元素插入到“La”中
{
int La_len, Lb_len, i;
ElemType e;
La_len = ListLength(*La);
Lb_len = ListLength(Lb);
for( i=1; i <= Lb_len; i++ )
{
GetElem(Lb, i, &e);//取Lb中第i个数据元素赋给e
if( !LocateElem(*La, e) )//La中不存在和e相同的数据元素,则插入之
{
ListInsert(La, ++La_len, e);
}
}
}