Junior — Middle
Kādās situācijās ir vēlams izmantot std::unordered_map konteineru?
sobes.tech AI
Atbilde no AI
std::unordered_map ir priekšroka, ja ir svarīgi ātri piekļūt elementiem pēc atslēgas un elementu secība nav nozīmīga. Tas ir haštabula, kas nodrošina vidējo O(1) piekļuves laiku, atšķirībā no std::map, kas ir realizēta kā līdzsvarots koks un nodrošina piekļuvi O(log n).
std::unordered_map lietošanas gadījumi:
- Kad nepieciešams ātri meklēt, ievietot vai dzēst elementus pēc atslēgas.
- Kad elementu secība nav svarīga.
- Kad atslēgas ir ar labu hašfunkciju, kas samazina kolīzijas.
Piemērs:
#include <unordered_map>
#include <string>
#include <iostream>
int main() {
std::unordered_map<std::string, int> wordCount;
wordCount["apple"] = 3;
wordCount["banana"] = 2;
std::cout << "apple: " << wordCount["apple"] << std::endl;
return 0;
}