РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
732 of 1245 menu

Класс BTreeMap

Класс BTreeMap из модуля std::collections представляет собой коллекцию пар ключ-значение, упорядоченных по ключу. В отличие от HashMap, элементы в BTreeMap всегда хранятся в отсортированном порядке, что позволяет эффективно выполнять операции поиска по диапазону, находить минимальный и максимальный элементы. Ключи должны реализовывать трейты Ord и PartialOrd. Параметрами обобщения являются тип ключа K и тип значения V.

Синтаксис

use std::collections::BTreeMap; let mut map: BTreeMap<K, V> = BTreeMap::new();

Пример

Давайте создадим BTreeMap и добавим в него несколько пар ключ-значение с помощью метода insert:

use std::collections::BTreeMap; fn main() { let mut map = BTreeMap::new(); map.insert("b", 2); map.insert("a", 1); map.insert("c", 3); println!("{:?}", map); }

Результат выполнения кода:

{"a": 1, "b": 2, "c": 3}

Обратите внимание, что элементы автоматически упорядочены по ключу, несмотря на то, что вставка происходила в другом порядке.

Пример

Давайте получим значение по ключу с помощью метода get:

use std::collections::BTreeMap; fn main() { let mut map = BTreeMap::new(); map.insert("a", 1); map.insert("b", 2); map.insert("c", 3); let res = map.get("b"); println!("{:?}", res); }

Результат выполнения кода:

Some(2)

Пример

Давайте получим первый и последний элементы карты с помощью методов first_key_value и last_key_value:

use std::collections::BTreeMap; fn main() { let mut map = BTreeMap::new(); map.insert("a", 1); map.insert("b", 2); map.insert("c", 3); println!("{:?}", map.first_key_value()); println!("{:?}", map.last_key_value()); }

Результат выполнения кода:

Some(("a", 1)) Some(("c", 3))

Смотрите также

  • метод new,
    который создает новый пустой BTreeMap
  • метод insert,
    который вставляет пару ключ-значение в карту
  • метод get,
    который возвращает значение по указанному ключу
  • метод range,
    который возвращает итератор по диапазону ключей
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить