Sobes.tech
Назад к вопросам
Senior
5

Как оптимально создать map, если известно, что входящий слайс содержит миллион элементов?

Компании, где спрашивали
техвил

Ответ от нейросети

sobes.tech AI

Для оптимального создания map в Go, если заранее известен размер входящего слайса (например, миллион элементов), стоит сразу выделить необходимую емкость для map с помощью функции make, указав capacity. Это позволит избежать многократного перераспределения памяти и повысит производительность.

Пример:

input := make([]string, 1000000) // пример входного слайса

// Инициализация map с заранее заданной емкостью
m := make(map[string]int, len(input))

for _, v := range input {
    m[v]++
}

Таким образом, map создается с нужным размером, что оптимизирует работу с большим количеством элементов.