Маҷмуъе, ки такрорҳоро нигоҳ медорад
Маҷмуъ такрорҳоро мепартояд. Баъзан такрорҳо худи маълумотанд: ду бозича бо як нарх, се риштаи угро бо як дарозӣ. Мултимаҷмуъ ҳар нусхаро нигоҳ медорад ва онҳоро бо тартиб мемонад.
Баромад
multiset амалҳои маҷмуъро дорад, вале нусхаҳо иҷозат дода мешаванд. insert(x) ҳамеша нусха илова мекунад ва size() ҳамаи нусхаҳоро мешуморад. count(x) шумораи нусхаҳои x аст. Гузариш аз ҳар нусха, аз хурдтарин ба калонтарин, мегузарад. lower_bound ва upper_bound мисли маҷмуъ кор мекунанд.
Нест кардани як нусха
Сатрҳои охири барнома домест, ки дар ин дарс бояд аз он эҳтиёт шавед:
ms.erase(x)ҳамаи нусхаҳоиx-ро нест мекунад;ms.erase(ms.find(x))як нусхаро нест мекунад:findба як нусха ишора мекунад ва нест кардани мавқеъ танҳо ҳамонро мебарад.
Вақте ки x нест, find ms.end()-ро медиҳад ва нест кардани end() барномаро вайрон мекунад. Аввал санҷед, магар ки дар шарт гуфта шавад, ки x ҳаст.
Фарқро машқ кунед. Ҳар халта бояд ба мақсад монанд шавад.