golang两个[]int求交集
时间: 2023-11-13 14:06:00 浏览: 134
求两个int型集合的交集
5星 · 资源好评率100%
可以通过使用 map 和双指针的方式来求两个 int 数组的交集,具体实现可以参考以下代码:
```go
func intersect(nums1 []int, nums2 []int) []int {
m := make(map[int]int)
var res []int
for _, num := range nums1 {
m[num]++
}
for _, num := range nums2 {
if m[num] > 0 {
res = append(res, num)
m[num]--
}
}
return res
}
```
首先遍历第一个数组,将每个元素出现的次数存储在 map 中;然后遍历第二个数组,如果当前元素在 map 中出现的次数大于 0,则将其加入结果集中,并将该元素在 map 中的出现次数减 1。最后返回结果集即可。
阅读全文