package test;
public class test {
private char[]sa,sb;
private byte[] biaozhi;
/**
* @param args
*/
public test(char[] x,char[] y){
sa=x;
sb=y;
}
public void cao(){
//0-表示2个集合都没有涉及到的元素,1-表示2个集合的交集,2-表示只属于集合x或集合y
//假设元素均为小写,设全集是a-z的小写字母
String[] result=null;
biaozhi=new byte[26];
for (int i=0;i<biaozhi.length;i++ ){
biaozhi[i]=0;
}
for (int i=0;i<sa.length;i++ ){
biaozhi[(int)sa[i]-97]++;
}
for (int i=0;i<sb.length;i++ ){
biaozhi[(int)sb[i]-97]++;
}
for (int i=0;i<biaozhi.length;i++ ){
if (biaozhi[i]==0){
System.out.println("2个集合都没有的元素");
System.out.println((char)(i+97));
}
else if(biaozhi[i]==1){
System.out.println("只存在其中1个集合的元素");
System.out.println((char)(i+97));
}
else{
System.out.println("2个集合都有的元素");
System.out.println((char)(i+97));
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
test mytest=new test(new char[]{'a','b','e','w','f'},new char[]{'i','o','b','e','c','z','x'});
mytest.cao();
}
}
效果如下:
只存在其中1个集合的元素
a
2个集合都有的元素
b
只存在其中1个集合的元素
c
2个集合都没有的元素
d
2个集合都有的元素
e
只存在其中1个集合的元素
f
2个集合都没有的元素
g
2个集合都没有的元素
h
只存在其中1个集合的元素
i
2个集合都没有的元素
j
2个集合都没有的元素
k
2个集合都没有的元素
l
2个集合都没有的元素
m
2个集合都没有的元素
n
只存在其中1个集合的元素
o
2个集合都没有的元素
p
2个集合都没有的元素
q
2个集合都没有的元素
r
2个集合都没有的元素
s
2个集合都没有的元素
t
2个集合都没有的元素
u
2个集合都没有的元素
v
只存在其中1个集合的元素
w
只存在其中1个集合的元素
x
2个集合都没有的元素
y
只存在其中1个集合的元素
z
分享到:
相关推荐
"C/Java常见算法大全"是一个集合了多种算法实践的资源库,旨在帮助开发者提升编程思维和逻辑能力。下面将详细探讨这个资源包中可能包含的算法类型以及C和Java在实现这些算法时的异同。 1. **排序算法**:如冒泡排序...
【Java基础方面】 Java是一种广泛使用的面向对象的编程语言,其设计目标是具有高可用性、安全性、跨平台兼容性和可移植性。在Java基础方面,面试官可能会考察以下几个核心概念: 1. **类与对象**:理解面向对象...
Java集合类 - **List**:有序集合,如`ArrayList`和`Vector`,适合按数值索引访问元素。 - **Map**:存储键值对,如`HashMap`和`TreeMap`,键必须唯一,便于查找和管理数据。 #### 6. JVM加载Class文件机制 JVM...
4. 并发支持:Java提供了强大的并发编程工具,如线程池、并发集合等,便于在多核环境下实现并行算法。C语言的并发编程通常需要依赖操作系统提供的API,如POSIX线程库,相对复杂且容易出错。 5. 类库支持:Java有...
### Java面试题集合与总结 #### 一、面向对象四大特性 **1. 抽象** - **定义**: 抽象是指在编程中提取事物的关键属性和行为,忽略不相关细节的过程。它允许开发者专注于核心功能,从而简化复杂度。 - **作用**: ...
Java笔试题大集合及答案,这是一个涵盖了广泛Java编程知识的主题,旨在帮助准备Java技术面试或者进行自我提升的开发者。在Java的学习和实践中,掌握扎实的基础和深入理解是至关重要的。以下是一些可能出现在这个题...
### 《计算机算法-设计与分析导论》中文翻译版 #### 1. 算法基础 **1.1 引言** 本章节作为全书的开篇,旨在为读者介绍计算机算法的基础概念,包括算法的基本定义、设计原则以及评估方法等。通过这部分内容的学习...
“Java数据结构的类库”章节将详细介绍Java集合框架,包括ArrayList、LinkedList、HashSet、HashMap等。这些类库为开发者提供了现成的数据结构实现,极大地简化了编程工作。理解它们的内部实现和性能特性,有助于在...
4. Java集合框架和数据结构: - 排序算法的种类及快速排序的实现。 - Collection框架中比较器的实现。 - 实现排序和序列化的方法。 5. Java I/O流和文件操作: - 字符串的截取,考虑汉字编码的特殊情况。 - 文件...
为了实现在集合框架中的元素比较,需要实现`Comparable`接口或者提供一个实现了`Comparator`接口的对象。 #### 十五、用插入法进行排序代码如下 插入排序是一种简单的排序算法,其实现代码如下: ```java public ...
2. **Java集合框架**: - **ArrayList与LinkedList**:比较两者的实现方式和性能差异,理解它们在不同场景下的应用。 - **HashMap与HashTable**:分析两者的异同,了解线程安全和非线程安全的区别。 - **Set接口...
- **Java集合体系结构**: - `Collection`:根接口,`List`、`Set`的父接口。 - `List`:有序、可重复。 - `Set`:无序、不可重复。 - `Map`:键值对结构。 - **`Vector`和`ArrayList`的区别和联系**: - `...
### JAVA程序员面试题集合知识点详解 #### 一、面向对象的四大特征 1. **抽象** - **定义**:抽象是指在设计阶段只关注事物本质特征,忽略次要细节的过程。这一过程帮助开发者集中精力处理核心逻辑,避免不必要的...
│ 基本算法.doc │ 孙卫琴精通struts.基于MVC的.java.web设计与开发.pdf │ 学习Struts提供的和Form相关标签.txt │ 日企编码规范.doc │ 电信盈科面试题.pdf │ 速算.txt │ 面试题URL.txt │ ├─Javascript │ ...
- **看过那些Java集合类的源码**:例如ArrayList、HashMap等。 **1.3 进程和线程** - **线程和进程的概念、并行和并发的概念**: - **进程**:系统资源分配的基本单位。 - **线程**:进程中的执行单位。 - **...
这些问题可能涵盖Java的基础语法、面向对象编程、异常处理、多线程、集合框架、IO流、网络编程等多个方面,同时也可能涉及一些高级主题,如反射、注解和JVM优化。 【标签】:“JavaScript” 虽然标题主要提及Java...
54、简述synchronized和java.util.concurrent.locks.Lock的异同 ? 34 55、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。 36 56、子线程循环10次,接着主线程循环100,接着又回到...
以下是一些基于Java的常见面试知识点,涵盖了编程基础、数据结构、算法、多线程、集合框架、JVM、网络编程等多个方面。 1. **编程基础**: - Java的基础语法,如类、对象、继承、接口、抽象类。 - 构造器的作用,...
虽然课程主要使用Java,但考虑到C++也是常见的编程语言,课程也会简要介绍C++的相关知识,并与Java进行对比,帮助学员理解两种语言在算法实现上的异同,增强跨语言编程能力。 七、持续学习与自我提升 课程鼓励学员...