golang两个string类型的切片求交集
时间: 2023-07-26 19:11:30 浏览: 125
可以使用map实现,遍历一个切片,将其中的元素作为键存入map中,然后遍历另一个切片,如果元素在map中存在,则说明是交集中的元素。
示例代码:
```go
func intersection(s1, s2 []string) []string {
m := make(map[string]bool)
for _, v := range s1 {
m[v] = true
}
var res []string
for _, v := range s2 {
if m[v] {
res = append(res, v)
}
}
return res
}
```
使用方法:
```go
s1 := []string{"a", "b", "c"}
s2 := []string{"b", "c", "d"}
res := intersection(s1, s2)
fmt.Println(res) // 输出 [b c]
```
阅读全文
相关推荐













