يتم تعيينه في C ++
تعيين (مجموعة) strong> & nbsp؛ & mdash؛ إنها حاوية تقوم تلقائيًا بفرز العناصر المضافة بترتيب تصاعدي. ولكن عند إضافة قيم متطابقة ، فإن set ستخزن مثيلًا واحدًا فقط منها ( multiset & nbsp؛ - & nbsp؛ multiset- & nbsp؛ قد تحتوي على تكرارات). عند إضافة عنصر جديد إلى المجموعة ، فإنه يقع على الفور في مكانه حتى لا ينتهك ترتيب الفرز. & nbsp؛ & nbsp؛
يتم تحديد المجموعات في C ++ & nbsp؛ في مكتبة القوالب القياسية STL من خلال الفئة set (multiset) .
المجموعات & nbsp؛ عبارة عن أشجار ثنائية حمراء-سوداء. & nbsp؛ عمليات البحث والحذف والإدراج لها تعقيد لوغاريتمي. div>
& nbsp؛
لاستخدام المجموعات ، تحتاج إلى تضمين مكتبة & ldquo؛ set & rdquo:
# تضمين العلامة & lt ؛ تعيين & GT.
إعلان المجموعة: h5>
تعيين & lt؛ int & gt؛ mySet ؛ // إعلان مجموعة فارغة.
multiset & lt؛ int & gt؛ mySet ؛ // إعلان مجموعة multiset فارغة. pre>
نبسب ؛
وظائف للعمل مع مجموعة (مجموعة) h5>
& nbsp؛
فارغ () code> - يتحقق من عدم وجود عناصر في الحاوية div>
& nbsp؛
size () - إرجاع عدد العناصر في الحاوية div>
& nbsp؛
clear () - مسح الحاوية div>
& nbsp؛
insert () - إدراج العناصر div>
& nbsp؛
erase () - يزيل العناصر div>
& nbsp؛
count () - إرجاع عدد العناصر المطابقة لمفتاح معين div>
& nbsp؛
find () - البحث عن عنصر بمفتاح محدد div>
& nbsp؛
lower_bound () - إرجاع مكرر للعنصر الأول بما لا يقل عن القيمة المحددة div>
& nbsp؛
upper_bound () - إرجاع مكرر للعنصر الأول أكبر من القيمة المحددة div>
& nbsp؛
نبسب ؛
مثال التعيين والمجموعة المتعددة h5>
# تضمين & lt؛ iostream & gt؛
# تضمين العلامة & lt ؛ تعيين & GT.
استخدام اسم للمحطة؛
انت مين()
{
تعيين & lt؛ int & gt؛ mySet1 ؛ // أعلن مجموعة فارغة
multiset & lt؛ int & gt؛ mySet2 ؛ // أعلن عن multiset فارغة
// إضافة عناصر إلى المجموعة
mySet1.insert (1) ؛
mySet1.insert (2) ؛
mySet1.insert (3) ،
mySet1.insert (1) ؛
// إضافة عناصر إلى multiset
mySet2.insert (1) ،
mySet2.insert (2) ،
mySet2.insert (3) ،
mySet2.insert (1) ،
تعيين & lt؛ int & gt؛ :: مكرره؛ // إنشاء مكرر
لـ (it = mySet1.begin () ؛ it! = mySet1.end () ؛ it ++) {// عرض جميع العناصر
كوت & lt؛ & lt؛ (* هو) العلامة & lt ؛ & lt ؛ & quot؛ & quot ؛؛ // مجموعات
}
كوت & lt؛ & lt؛ نهاية.
لـ (it = mySet2.begin () ؛ it! = mySet2.end () ؛ it ++) {// إخراج جميع العناصر
كوت & lt؛ & lt؛ (* هو) العلامة & lt ؛ & lt ؛ & quot؛ & quot ؛؛ // multisets
}
العودة 0 ؛
}
|
استخدام set & nbsp؛ مع المقارنة h5>
مثال للمقارن لإنشاء مجموعة مرتبة بترتيب تنازلي.
هيكل cmp {
عامل التشغيل المنطقي () (int a، int b) const {
عودة و GT. ب؛
}
} ؛
استخدام المقارنة عند إنشاء مجموعة .
تعيين & lt ؛ int ، cmp & GT ؛ س؛
|