我这边有个场景是针对数据去重,但又不是简单的去重,是有时间区间范围内的交集、并集计算。
废话不多说,我估计有不少人记不清集合的并集、差集、交集的概念了。
集合的分类:
并集:以属于A或属于B的元素为元素的集合成为A与B的并(集)
交集: 以属于A且属于B的元素为元素的集合成为A与B的交(集)
差集:以属于A而不属于B的元素为元素的集合成为A与B的差 (集)
如果只是去重的化,完全可以使用golang map实现。比如下面的例子就可以实现去重。
和我们预料的一样,必须出错 !
golang-set是我在github找到的一个库,其实也没得选…. go get 安装go库包时候因为参数不对,总是失败….
下面是go set的使用实例.
上面那段go代码运行的结果:
set集合本来就没啥说的….