Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
map :: Erase()メソッドには、1つのアイテムを削除するための2つのオーバーロードがあります。
void erase ( iterator position ); size_type erase ( const key_type& x );
どのバージョンがより高速である可能性が高いかを確認する必要があります。2番目はおそらくmap::find()を呼び出してイテレータを検索する必要があるため、最初のバージョンになると思います。
誰でも確認できますか?
ありがとう!
1つ目は償却された一定の複雑さで、2つ目は対数です。定数項が最初のバージョンを2番目のバージョンより遅くするのに十分な大きさになる可能性は低いですが、非常に小さいマップの場合、それらは互いに区別できないはずです。