java 交集操作的效率_java的集合操作(交集、并集、差集)整理

[1、差集( except )select a from t_aexceptselect a from t_b-- 也可写作:select a from t_a where a not in (select a from t_b)-- 多个字段时:select a,b from t_aexc

/**

* 求ls对ls2的差集,即ls中有,但ls2中没有的

*

* @param ls

* @param ls2

* @return

*/

public static List diff(List ls, List ls2) {

List list = new ArrayList(Arrays.asList(new Object[ls.size()]));

Collections.copy(list, ls);

list.removeAll(ls2);

return list;

}[ 说明:这里没有求差集的代码,有了交集和并集,差集=并集-交集       package com; import java.util.ArrayList; import java.util.HashSet; import java.u

/**

* 求2个集合的交集

*

* @param ls

* @param ls2

* @return

*/

public static List intersect(List ls, List ls2) {

List list = new ArrayList(Arrays.asList(new Object[ls.size()]));

Collections.copy(list, ls);

list.retainAll(ls2);

return list;

}

/**

* 求2个集合的并集

*

* @param ls

* @param ls2

* @return

*/

public static List union(List ls, List ls2) {

List list = new ArrayList(Arrays.asList(new Object[ls.size()]));

Collections.copy(list, ls);//将ls的值拷贝一份到list中

list.removeAll(ls2);

list.addAll(ls2);

return list;

}[在实现数据挖掘一些算法或者是利用空间向量模型来发现相似文档的时候,会遇到求两个集合的交集的情况。以前一般是采用比较笨拙的办法,依次遍历其中一个集 合的元素,然后

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值