我在Go语言中遇到了这个要求,我需要对字符串进行联合
这适用于Go版本1.12.5
func Union(a, b []string) []string {
m := make(map[string]bool)
for _, item := range a {
m[item] = true
}
for _, item := range b {
if _, ok := m[item]; !ok {
a = append(a, item)
}
}
return a
}
我有上面的代码,但是这里的性能非常关键,因为我需要完全合并许多切片。 我必须做另一个for循环才能遍历切片列表。 也许有更好的方法可以实现这一目标?
更多信息: 所有切片都在一个地方准备好了,每个都按字典顺序排序。几乎每个切片都与其他切片重复。