Im Moment habe ich eine Menge Code, der wie folgt aussieht:Was ist der schnellste Weg zum Einfügen/Aktualisieren von std :: unordered_map Elementen ohne ein if?
std::unordered_map<int,int> my_dict;
.
.
.
// If the key does exist in the dictionary
if(my_dict.count(key) == 1){
my_dict[key] = value;
}
// If its a new key
else{
my_dict.insert(std::make_pair(key,value));
}
Gibt es eine Möglichkeit, diese nach oben beschleunigen kann, indem einfach jedes Mal den Wert zu überschreiben?
Sieht aus wie Sie Karte – billz
@billz Ich möchte O (1) Einfügezeitpunkt verwenden sollte? Ich will keinen Baum O log (N) – user997112
der [] tut dies. http://www.cplusplus.com/reference/unordered_map/unordered_map/operator[]/ Natürlich muss die Komplexität linear sein. Wenn Sie weniger Zeit zum Einfügen benötigen, verwenden Sie eine Karte – janoliver