در C++ تنظیم میشود
تنظیم (مجموعه)
— این ظرفی است که به طور خودکار عناصر اضافه شده را به ترتیب صعودی مرتب می کند. اما هنگام افزودن مقادیر یکسان، set
فقط یک نمونه از آن را ذخیره میکند (multiset
- multiset- ممکن است دارای موارد تکراری باشد). هنگامی که یک عنصر جدید به مجموعه اضافه می شود، بلافاصله در جای خود قرار می گیرد تا ترتیب مرتب سازی را نقض نکند.
مجموعهها در C++ در کتابخانه قالب استاندارد STL
از طریق کلاس set (multiset)
تعریف میشوند.
مجموعهها درختهای قرمز-سیاه باینری هستند. عملیات جستجو، حذف و درج پیچیدگی لگاریتمی دارند.
برای استفاده از مجموعه ها، باید کتابخانه “
set
” را وارد کنید:
#include <set>
تنظیم اعلامیه:
تنظیم<int> mySet; // اعلام یک مجموعه خالی.
چند مجموعه<int> mySet; // اعلام یک چند مجموعه خالی.
توابع کار با یک مجموعه (مجموعه)
empty()
- عدم وجود عناصر را در ظرف بررسی می کند
size()
- تعداد عناصر موجود در ظرف را برمیگرداند
clear()
- ظرف را پاک می کند
insert()
- عناصر را درج می کند
erase()
- عناصر را حذف می کند
count()
- تعداد عناصر مطابق با یک کلید داده شده را برمیگرداند
find()
- عنصری را با یک کلید خاص پیدا می کند
lower_bound()
- یک تکرار کننده را به عنصر اول که کمتر از مقدار داده شده نباشد برمی گرداند
upper_bound()
- یک تکرار کننده را به اولین عنصر بزرگتر از مقدار مشخص شده برمی گرداند
مثال مجموعه و چند مجموعه
#include <iostream>
#include <set>
با استفاده از namespace std.
int main()
{
تنظیم<int> mySet1; // یک مجموعه خالی اعلام کرد
چند مجموعه<int> mySet2; // یک چند مجموعه خالی اعلام کرد
// عناصر را به مجموعه اضافه کنید
mySet1.insert(1);
mySet1.insert(2);
mySet1.insert(3);
mySet1.insert(1);
// عناصر را به مولتی مجموعه اضافه کنید
mySet2.insert(1);
mySet2.insert(2);
mySet2.insert(3);
mySet2.insert(1);
تنظیم<int>::iterator it; //یک تکرار کننده ایجاد کنید
for(it = mySet1.begin(); it != mySet1.end(); it++) { // نمایش همه عناصر
cout << (*آن) << " "; // مجموعه ها
}
cout << endl;
for(it = mySet2.begin(); it != mySet2.end(); it++) { // خروجی همه عناصر
cout << (*آن) << " "; // چند مجموعه
}
بازگشت 0;
}