为了账号安全,请及时绑定邮箱和手机立即绑定

有2个已经从小到大排序好的数组,要求只遍历一次,找出2个数组中共有的元素

标签:
Java

package test;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class Test {
public static void main(String[] args) {
int[] a ={6,5,4,3,2};
int[] b ={8,5,3,2,1,0};
Set<Integer> setA=new HashSet<Integer>();
Set<Integer> setB=new HashSet<Integer>();
Set<Integer> setC=new HashSet<Integer>();
Set<Integer> setD=new HashSet<Integer>();
for(int i=0;i<(a.length>=b.length?a.length:b.length);i++){
if(i<a.length){
setA.add(a[i]);
setC.add(a[i]);
}
if(i<b.length){
setB.add(b[i]);
setD.add(b[i]);
}
}
if(a.length>=b.length){
setA.removeAll(setB);
setC.removeAll(setA);
Iterator<Integer> it =setC.iterator();
while(it.hasNext()){
Integer x=it.next();
System.out.println(x);
}
}else{
setB.removeAll(setA);
setD.removeAll(setB);
Iterator<Integer> it =setD.iterator();
while(it.hasNext()){
Integer x=it.next();
System.out.println(x);
}
}
}
}

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
0
获赞与收藏
20

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消