Sobes.tech
Junior — Middle

Kādā standarta konteinerā ir realizēta datu struktūra map?

sobes.tech AI

Atbilde no AI

Standarta C++ bibliotēkā datu struktūra std::map ir realizēta, balstoties uz sarkano-melno koku (Red-Black Tree). Tas ir līdzsvarots binārais meklēšanas koks, kas nodrošina logaritmisku laiku elementu ievietošanai, dzēšanai un meklēšanai.

C++ valodā std::map ir asociatīvs konteineris, kas glabā pārus atslēga-vērtība sakārtotā secībā pēc atslēgas. Pateicoties sarkano-melno koku struktūrai, koks ir līdzsvarots, un operācijas ir efektīvas.

std::map lietošanas piemērs:

#include <iostream>
#include <map>

int main() {
    std::map<int, std::string> myMap;
    myMap[1] = "viens";
    myMap[2] = "divi";
    myMap[3] = "trīs";

    for (const auto& pāris : myMap) {
        std::cout << pāris.first << ": " << pāris.second << std::endl;
    }
    return 0;
}

Tādējādi, std::map ir balstīts uz līdzsvarotu koku, nevis uz haštabulu (haštabulām izmanto std::unordered_map).