1、一、题目要求:
用Java语言实现单链表的基本操作,并实现集合的交、并和差运算。
二、程序功能定义:
1、输出两个集合的交集,即找出两个集合的相同元素。
2、输出两个集合的并集,即把两个集合的全部元素不重复的加起来。
3、输出两个集合的差集,即从一个集合中找出另一个集合里没有的元素。
三、设计思路:
程序1:单链表结点
public class Node
2、点
public Node(T data, Node
3、 //以上为默认构造方法,构造空单链表
public static ArrayList
4、head; //rear指向单链表最后一个结点
for (int i = 0; i < element.length; i++)
//若element==null,跑出空对象异常;element.length==0时,构造空链表
{
rear.next = new Node
5、tr = "(";
Node
6、{
Node
7、 //用逗号间隔
str += p.data.toString();
this.union.add(p.data.toString()) ;
}
q = q.next;
}
p = p.next;
}
return str + ")";
}
//以上为求交集过程。
public String union(SinglyList list)
{
Node
8、
while (p != null)
{
Node 9、s(union.get(a))&a==union.size()-1)
{
if (!str.equals("(")) str += ",";
str += p.data.toString();
}
}
}
}
q = q.next;
}
p = p.next;
i = 0; 10、
}
Node 11、)
{
Node 12、 }
}
q = q.next;
}
p = p.next;
i = 0;
}
return str + ")";
}
}
//以上为求差集过程。
程序3:
import java.util.Scanner;
public class MainClass
{
public static void main(String[] args)
{
int a, b;
Scanner cin = new Scanner(System.in);
System.out.print(" 13、请输入集合A的元素(用英文逗号间隔):");
String a_string=cin.nextLine();
String[] suma=a_string.split(",");
System.out.print("请输入集合B的元素(用英文逗号间隔):");
String b_string=cin.nextLine();
String[] sumb=b_string.split(",");
SinglyList






