Как работает map в c++?

Пользователь

от francis_schuster , в категории: C/C++ , 6 месяцев назад

Как работает map в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jose , 6 месяцев назад

@francis_schuster 

Функция map в C++ является частью стандартной библиотеки и предоставляет контейнерный класс для хранения пар "ключ-значение". Работа с map в C++ осуществляется через класс std::map, который является реализацией бинарного дерева поиска.


При использовании std::map необходимо указать типы ключей и значений. Расположение элементов в std::map происходит в отсортированном порядке на основе ключей. Вставка и удаление элементов в std::map происходит быстро, благодаря использованию бинарного дерева поиска.


Для работы с std::map в C++ необходимо подключить заголовочный файл <map>. Пример использования std::map приведен ниже:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
#include 
#include 

int main() {
    std::map map;
    
    map.insert(std::make_pair(1, "первый элемент"));
    map.insert(std::make_pair(2, "второй элемент"));
    map.insert(std::make_pair(3, "третий элемент"));

    std::cout << "Размер карты: " << map.size() << std::endl;
    
    std::cout << "Ключ 2: " << map[2] << std::endl;
    
    std::cout << "Весь map: " << std::endl;
    for (const auto& pair : map) {
        std::cout << pair.first << ": " << pair.second << std::endl;
    }
    
    return 0;
}


Результат выполнения программы:

1
2
3
4
5
6
Размер карты: 3
Ключ 2: второй элемент
Весь map:
1: первый элемент
2: второй элемент
3: третий элемент


В данном примере создается std::map с ключами типа int и значениями типа std::string. С помощью функции insert в map вставляются элементы. Затем происходит вывод размера map, значения по ключу и всех элементов map через цикл.