c#List结合IEqualityComparer求交集
List元素类:
public class MultiPointSearchingRet
{
public int ID { get; set; }
public string PlateNumber { get; set; }
public int VehicleBrand1 { get; set; }
public string BrandName { get; set; }
}
实现了IEqualityComparer的比较类:
public class MultiPointSearchingRetComparer : IEqualityComparer<MultiPointSearchingRet>
{
public bool Equals(MultiPointSearchingRet x, MultiPointSearchingRet y)
{
return x.PlateNumber == y.PlateNumber && x.VehicleBrand1 == y.VehicleBrand1;
} public int GetHashCode(MultiPointSearchingRet obj)
{
return obj.ID.GetHashCode();
}
}
调用:
List<MultiPointSearchingRet>[] tmpLst = new List<MultiPointSearchingRet>[];
List<MultiPointSearchingRet> retLst = new List<MultiPointSearchingRet>();
//略
for (int i = ; i < length; i++)
{
if (i == )
retLst = tmpLst[i];
else
retLst = retLst.Intersect(tmpLst[i], new MultiPointSearchingRetComparer()).ToList();
}
c#List结合IEqualityComparer求交集的更多相关文章
- for循环求交集
for循环方式求交集 #!/usr/bin/env python #coding:utf-8 #取交集 #定义两个序列对象,求alist与blist对象的交集元素 alist = [2,9,3,4,5 ...
- PHP实现 bitmap 位图排序 求交集
2014年12月16日 17:15:09 初始化一串全为0的二进制; 现有一串无序的整数数组; 如果整数x在这个整数数组当中,就将二进制串的第x位置为1; 然后顺序读取这个二进制串,并将为1的位转换成 ...
- [ECNU 1624] 求交集多边形面积
求交集多边形面积 Time Limit:1000MS Memory Limit:30000KB Total Submit:98 Accepted:42 Description 在平面上有两给定的凸多边 ...
- python list求交集
方法一: a=[1,2,3] b=[1,3,4] c=list(set(a).intersection(set(b))) print c #[1,3] 这种方法是先把list转换为set,再用set求 ...
- javascript集合求交集
两集合求交集 思路: 1. 每一次从B数组中取一值,然后在A数组里逐个比较,如果有相等的,则保存.该算法复杂度为 O(MN). M, N 分别为数组 A B 的长度. 2. 因为A B 都排过序,所以 ...
- python 两个list 求交集,并集,差集
def diff(listA,listB): #求交集的两种方式 retA = [i for i in listA if i in listB] retB = list(set(listA).inte ...
- Blob分析--粘连颗粒检测 基于距离变换的分水岭区域分割 盆地与原连通域求交集
文章转自微信公众号:机器视觉那些事 *******************************************************************公众号:机器视觉那些事儿*** ...
- list1与list2求交集的方法总结!
一.有序集合求交集的方法有 a)二重for循环法,时间复杂度O(n*n) b)拉链法,时间复杂度O(n) c)水平分桶,多线程并行 d)bitmap,大大提高运算并行度,时间复杂度O(n) e)跳表, ...
- 集合求交集 & 去除列表中重复的元素
集合求交集: set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} 交集:set3 = set1 & set2 print(ste3) #结果为{4,5} 或者ste1. ...
随机推荐
- Domination
题目链接 #include <bits/stdc++.h> using namespace std; typedef long long ll; inline ll read(){ , f ...
- 分享| 语义SLAM的未来与思考(泡泡机器人)
相比典型的点云地图,语义地图能够很好的表示出机器人到的地方是什么,机器人“看”到的东西是什么.比如进入到一个房间,点云地图中,机器人并不能识别显示出来的一块块的点云到底是什么,但是语义地图的构建可以分 ...
- Codeforces 548E(莫反、容斥)
转化为质数域上的操作,如果用莫反的话,记录因数的cnt. 其实莫反的推式子最后和容斥做法殊途同归了,容斥的系数就是莫比乌斯函数. const int maxn = 2e5 + 5, maxa = 5e ...
- Codeforces 1114F(欧拉函数、线段树)
AC通道 要点 欧拉函数对于素数有一些性质,考虑将输入数据唯一分解后进行素数下的处理. 对于素数\(p\)有:\(\phi(p^k)=p^{k-1}*(p-1)=p^k*\frac{p-1}{p}\) ...
- HTML——传统布局的使用
传统布局:使用table来做整体页面的布局 总结:这种方式来制作页面现在也不是很多了,感觉并不是很高效. 需要先用photoshop量出页面布局具体的尺寸位置,再将其划分为表格,对每个格子进行编辑. ...
- 省厅报件7.0 读取mdb 生成xml 文件
using System;using System.Collections.Generic;using System.Data;using System.Data.OleDb;using System ...
- babel7中 corejs 和 corejs2 的区别
babel7中 corejs 和 corejs2 的区别 最近在给项目升级 webpack4 和 babel7,有一些改变但是变化不大.具体过程可以参考这篇文章 webpack4:连奏中的进化.只是文 ...
- webpack分开打包和合并打包的瘦身
webpack.config.js 记录一下优化webpack的几个点: 1. devtool: false, //产品阶段不应该有devtool entry: { bundle : pa ...
- AJPFX浅析Java数组
数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法.注意:如 ...
- Android 使用NestedScrollView+ViewPager+RecyclerView+SmartRefreshLayout打造酷炫下拉视差效果并解决各种滑动冲突
如果你还在为处理滑动冲突而发愁,那么你需要静下心来看看这边文章,如果你能彻底理解这篇文章中使用的技术,那么,一切滑动冲突的问题解决起来就轻而易举了: 先扔一个最终实现的效果图 先分析下效果图中实现的功 ...