集合的交运算(单链表)
-
总时间限制:
- 1000ms 内存限制:
- 65536kb
- 描述
-
-
利用两个单链表LA和LB分别表示两个集合A和B(即线性表中的数据元素即为集合中的成员),要求一个新的集合A=A
∩B。这就要求对链表作如下操作:将存在于表LA中,同时又存在于LB中的数据元素保留,将LA中其他元素删除。
例如:输入8个整数:3 6 7 12 14 8 9 2,建立链表LA;再输入10个整数:8 9 5 21 22 18 29 25 80 12,建立链表LB;则做集合的交运算后,LA变为:12 8 9
要求:必须使用链表,程序中必须有链表的相关操作:初始化、插入、删除、输出链表中元素、销毁。不满足要求的程序即使通过,也会算作0分。
输入
-
-
输入包含3行:
第一行是两个整数n和m(1 <= n,m <= 200),用空格分隔,分别代表集合A和B的元素个数。
第二行包含n个整数。每个整数之间用空格分隔;每个整数的取值在32位有符号整数范围以内。代表集合A的元素。
第三行包含m个整数。每个整数之间用空格分隔;每个整数的取值在32位有符号整数范围以内。代表集合B的元素。 输出
-
输出只有1行:
按输入时的顺序输出交集中元素的值,每元素之间用空格分隔。 样例输入

这篇博客主要探讨如何在openjudge系统中使用单链表数据结构进行集合的交运算实践。通过实例解析,详细阐述了如何利用单链表高效地计算两个集合的交集。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



