`
cunfu
  • 浏览: 9713 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

数组实现集合的并,交,差

J# 
阅读更多
/**
 * 通过数组操作集合,实现并,交,差
 * @author BreAthe
 *
 */
class SetOperator {
	/**
	 * 实现数组集合setOne,setTwo的交运算
	 * @param setOne
	 * @param setTwo
	 */
	public void intersection(int[] setOne, int[] setTwo) {
		for(int i = 0; i < setTwo.length; i++) {//逐个考察setTwo中的元素
			for(int j = 0; j < setOne.length; j++) {
				if(setOne[j] == setTwo[i]) {
					System.out.print(setOne[j] + " ");
					break;
				}
			}
		}
	}
	
	/**
	 * 实现数组集合setOne,setTwo的差运算
	 * setOne - setTwo
	 * @param setOne
	 * @param setTwo
	 */
	public void difference(int[] setOne, int[] setTwo) {
		for(int i = 0; i < setTwo.length; i++) {
			boolean flag = false;
			for(int j = 0; j < setOne.length; j++) {
				if(setOne[j] == setTwo[i]) {
					flag = true;
					break;
				}
			}
			if(!flag) {
				System.out.print(setTwo[i] + " ");
			}
		}
	}
	
	/**
	 * 实现数组集合setOne,setTwo的并运算
	 * @param setOne
	 * @param setTwo
	 */
	public void union(int[] setOne, int[] setTwo) {
		for(int i = 0; i < setOne.length; i++) {
			System.out.print(setOne[i] + " ");
		}
		for(int i = 0; i < setTwo.length; i++) {//逐个考察setTwo中的元素
			boolean flag = false;
			for(int j = 0; j < setOne.length; j++) {
				if(setTwo[i] == setOne[j]) {
					flag = true;
					break;
				}
			}
			if(!flag) {
				System.out.print(setTwo[i] + " ");
			}
		}
	}
	
	public void prset(int[] set) {
		for(int i = 0; i < set.length; i++) {
			System.out.print(set[i] + " ");
		}
		System.out.println();
	}
	
	
public class SetOperatorTest {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[] one = {2, 5, 7, 8, 10, 12, 15, 17, 20};
		int[] two = {3, 5, 7, 9, 13};
		SetOperator so = new SetOperator();
		System.out.println("集合1为:");
		so.prset(one);
		System.out.println("集合2为:");
		so.prset(two);
		System.out.println("两个集合的并为:");
		so.union(one, two);
		System.out.println("\n两个集合的交为:");
		so.intersection(one, two);
		System.out.println("\n集合1和集合2的差为:");
		so.difference(one, two);
	}
}
分享到:
评论

相关推荐

    c++特别版类的习题9 数组实现集合的交并差

    c++特别影印版第十章课后习题9 用数组实现集合哦,涵盖了交集,并集,差集等等

    利用数组实现集合的交、并、和差集

    利用数组实现集合的交、并、和差集,该代码在codeblocks、VS2012通过编译

    集合的交并差运算(c语言版)

    功能:能演示执行集合的并交差运算 通过有序链表来实现此次运算

    数组的并,交,差运算(C++/程序与设计)

    实现交、并、差运算时,分别把代码写成函数的形式,即实现交运算的函数,实现并运算的函数,实现差运算的函数,在主函数中分别调用三个函数。 使用菜单形式对应各个操作,应允许用户反复查看结果,想结束程序时,...

    大学离散数学实验集合运算.zip

    【实验内容】编程实现集合的交、并、差和补运算。 【实验原理和方法】 (1)用数组A,B,C,E表示集合。输入数组A,B,E(全集),输入数据时要求检查数据是否重复(集合中的数据要求不重复),要求集合A,B是集合E...

    集合类的菜单界面

    集合类的菜单界面,用数组实现集合的交、并等操作,只是整数集合

    函数、内存、一维数组、二维数组

    •定义函数时,函数的结果应该返回给调用者,交由调用者处理。 函数的应用 两个明确 •明确要定义的功能最后的结果是什么? •明确在定义该功能的过程中,是否需要未知内容参与运算 示例: •需求...

    运算符重载题目合集(整型数组交集、矩阵加法、分数加法)

    1.【题目】建一个类Set,重载运算符*,实现集合(用数组表示)的交(∩)运算。集合中的元素不能相同。两个集合的交仅包含两个集合中共同存在的。 2.【题目】建立一个类Matrix实现对M行,N列矩阵的加法运算。 3....

    并查集

    集合的运算:交、并、补、差和判断一个元素是否属于某一集合。 并查集:集合的合并、判断一个元素是否属于某一集合的操作。 并查集问题中集合如何存储 可以用树结构表示集合,每棵树代表一个集合,树的每个节点一个...

    C++ STL开发技术导引(第5章)

    23.20 集合求交set_ intersection 396 23.21 集合求差set_difference 398 23.22 集合求异set_symmetric_difference 399 23.23 最小值min 401 23.24 最大值max 402 23.25 最小元素min_element 403 23.26...

    LeetCode解题总结

    1. 数组 1.1 从有序数组中删除重复元素 1.2 在排序数组被旋转后进行查找 1.3 寻找两个排序数组的中位数 1.4 最长连续序列 1.5 累加和 1.6 移除数组中指定值 1.7 下一个排列 1.8 第n个全排列 1.9 验证数独的正确性 ...

    ACM算法模板和pku代码

    线段树+树状数组+并查集,转化为排队问题 离散化 离散化矩形切割,矩形覆盖面积统计 覆盖矩形周长统计 离散化矩形切割 灯光投影 搜索 导弹 Bfs+hash状态的抽象,模关系 Bfs变形,钥匙与门 双向广搜 迭代加深 ...

    计算机二级公共基础知识

    ② 退栈运算:取出栈顶元素并赋给一个指定的变量; ③ 读栈顶元素:将栈顶元素赋给一个指定的变量。 1.4 队列 1. 队列的基本概念 队列是只允许在一端进行删除,在另一端进行插入的顺序表,通常将允许删除的这一端...

    C#并行编程高级教程:精通.NET 4 Parallel Extensions中文(第一部分)

    4.1.5 将使用数组和不安全集合的代码转换为使用并发集合的代码 4.1.6 ConcurrentBag 4.1.7 IProducerConsumerCollection 4.1.8 BlockingCollection 4.1.9 ConcurrentDictionary 4.2 小结 第5章 协调数据结构 5.1 ...

    C#并行编程高级教程:精通.NET 4 Parallel Extensions中文(第2部分)

    4.1.5 将使用数组和不安全集合的代码转换为使用并发集合的代码 4.1.6 ConcurrentBag 4.1.7 IProducerConsumerCollection 4.1.8 BlockingCollection 4.1.9 ConcurrentDictionary 4.2 小结 第5章 协调数据结构 ...

    C#并行编程高级教程:精通.NET 4 Parallel Extensions中文(第3部分)

    4.1.5 将使用数组和不安全集合的代码转换为使用并发集合的代码 4.1.6 ConcurrentBag 4.1.7 IProducerConsumerCollection 4.1.8 BlockingCollection 4.1.9 ConcurrentDictionary 4.2 小结 第5章 协调数据结构 ...

Global site tag (gtag.js) - Google Analytics