当前位置:   article > 正文

第三周项目(3)- 求集合并集_unionlist函数

unionlist函数
  1. /*
  2. *Copyright(c) 2017,YTU CS
  3. *All right reserved.
  4. *作 者:王铭泽.
  5. *完成日期:2017,9,10.
  6. *版 本 号: v1.0
  7. *
  8. *问题描述:   假设有两个集合 A 和 B 分别用两个线性表 LA 和 LB 表示,即线性表中的数据元素即为集合中的成员。
  9. 设计算法,用函数unionList(List LA, List LB, List &LC )函数实现该算法,求一个新的集合C=A∪B,即将两个集合的
  10. 并集放在线性表LC中。
  11. *输 入: 无
  12. *输 出: 两个顺序表并集为一个顺序表的结果。
  13. */

问题观察分析:这个问题里充分利用了顺序表的 多个算法,让我们体会了自己写算法用算法的过程。

首先解题思路基本上问:1.在基本算法基础上添加一个函数unionList,其作用是完成LA与LB顺序表的并集,其中函数用到的顺序表算法有初始化线性表、求线性表长度、获取单个字符元素、判断元素是否存在、插入元素这几大算法。2.函数内部先进行把A线性表完全传递给C的过程,此过程无需判断重复元素。之后进行B元素传递给C元素的过程,此过程要求判断是否与A中的元素重复。若不重复则添加。

代码如下:

  1. #include <iostream>
  2. #include "shunxuList.h"//对头文件的声明,头文件里包含有函数的声明。
  3. using namespace std;
  4. void unionList(SqList *LA, SqList *LB, SqList *&LC)
  5. {
  6. int l,i; //新线性表长度的存放为l。
  7. ElemType e;
  8. InitList(LC);
  9. //先将A传递给新
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号