Сводный список срезов строк - PullRequest
0 голосов
/ 05 июля 2019

Я столкнулся с этим требованием в Go, где мне нужно взять объединение кусочков строк

Это для версии 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
}

У меня есть вышеуказанный кусоккод, но производительность здесь довольно критична, потому что мне нужно объединить много фрагментов в целом.Я должен сделать еще один цикл для цикла по списку ломтиков.Может быть, есть ли лучший способ добиться этого?

Дополнительная информация: Все ломтики готовы в одном месте, и каждый отсортирован в лексикографическом порядке.Почти у каждого среза есть дубликаты с другими.

...