Bonjour,
Je dois fusionner deux multimaps.
Je sais le faire avec insert (complexité en temps dans O(N.Log(N)).
Je voudrais le faire avec merge (complexité en temps dans O(N)).
J'ai essayé ça, mais ça ne compile pas :
Merci de votre aide, Olivier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 typedef std::multimap<int, std::pair<int, int>> Map ; // ma structure de multimap Map final_m ; Map m1 = my_algo(b1) ; // retourne une des maps à fusionner Map m2 = my_algo(b2) ; // retourne l'autre map à fusionner // erreur ici : final_m.begin() n'est pas le bon itérateur. merge (m1.begin(), m1.end(), m2.begin(), m2.end(), final_m.begin()) ;
Partager