Ich möchte eine große Anzahl von Paaren (ca. 10^7 Paare) in einem Container speichern. Die Operationen, die ich ausführen möchte, sind nur insert
und find
.Was ist der Unterschied in der Leistung von Std :: Set <Paar <int,int>> und Std :: Map <int,int>
Da wir std::set
und std::map
verwenden können, um Paare zu speichern, möchte ich wissen, welcher Container in Bezug auf Geschwindigkeit besser ist. Ich suchte nach ähnlichen Fragen, fand aber keine Antwort. so wenden Sie sich bitte jemand meine Frage beantworten ......
Wenn Leistung, wenn Ihr Ziel, und das sind die einzigen Operationen, die Sie ausführen, und Sie * nicht * in Anbetracht einer [** 'unordered_map' ** **] (http://en.cppreference.com/w/cpp/container/unordered_map), schlage ich demütig vor, Sie überdenken, da es sehr wahrscheinlich * entweder * der anderen Optionen übertreffen wird. – WhozCraig
Wenn Sie Wert auf Leistung legen, sollten Sie messen. Und denken Sie an den zusätzlichen Code, der geschrieben und verwaltet werden muss, damit sich das Set wie die Karte verhält. – juanchopanza
Eine Karte von was? 'Karte'? Dieser Container würde einen ganz anderen Zweck haben, um das Paar > 'zu setzen. –