void union List &La, List Lb) La_len= ListLength(La);∥求线性表的长度 Lb len=Listlength(lb) for (i=1; i<=Lb len;1++t Getelem(Lb,i,e);∥/取Lb中第个数据元素赋给e if ( LocateElem(La, e, equal() ListInsert(La, ++La len, e) ∥ILa中不存在和e相同的数据元素,则插入之 }∥ union
GetElem(Lb, i, e); // 取Lb中第i个数据元素赋给e if (!LocateElem(La, e, equal( )) ) ListInsert(La, ++La_len, e); // La中不存在和 e 相同的数据元素,则插入之 void union(List &La, List Lb) { La_len = ListLength(La); // 求线性表的长度 Lb_len = ListLength(Lb); for (i = 1; i <= Lb_len; i++) { } } // union
例2-2 已知一个非纯集合B,试构造一个 纯集合A,使A中只包含B中所有值各 不相同的数据元素。 仍选用线性表表示集合
已知一个非纯集合 B,试构造一个 纯集合 A,使 A中只包含 B 中所有值各 不相 同的数据元素。 仍选用线性表表示集合 例 2-2
集合B 集合 从集合B取出物件放入集合A 要求集合A中同样物件不能有两件以上 因此,算法的策略应该和例2-1相同
集合 B 集合 A 从集合 B 取出物件放入集合 A 要求集合A中同样物件不能有两件以上 因此,算法的策略应该和例2-1相同
void union List &La, List Lb) Titlist(a);∥构造(空的)线性表LA La len=ListLength La); Lb len=ListLength (Lb) for (i=1; i<=Lb len; 1++& Getelem(Lb,i,e);∥取Lb中第i个数据元素赋给e if (!LocateElem (La, e, equal()) ListInsert(La, ++La len, e) ∥La中不存在和e相同的数据元素,则插入之 3//union
void union(List &La, List Lb) { La_len=ListLength(La); Lb_len=ListLength(Lb); } // union GetElem(Lb, i, e); // 取Lb中第 i 个数据元素赋给 e if (!LocateElem(La, e, equal( )) ) ListInsert(La, ++La_len, e); // La中不存在和 e 相同的数据元素,则插入之 for (i = 1; i <= Lb_len; i++) { } InitList(La); // 构造(空的)线性表LA
试改变结构,以有序表表示集合。 若线性表中的数据元素相互之间可以比较, 并且数据元素在线性表中依值非递减或非 递增有序排列,即 a1≥a1或a;≤a1-1(i ),则 称该线性表为有序表( Ordered list)
若线性表中的数据元素相互之间可以比较, 并且数据元素在线性表中依值非递减或非 递增有序排列,即 ai≥ai-1 或 ai≤ai-1(i = 2,3,…, n),则 称该线性表为有序表(Ordered List)。 试改变结构,以有序表表示集合