интерфейсіне ұқсас екенін байқауға болады. Төменде бүтін сандар жиыны
349
#include
#include
using namespace std;
typedef set > set_i;
set_i::iterator i;
int main(){
int a[4] = {4, 2, l, 2};
set_i s1;
// Бос жиын құрылады
set_i s2(a, a + 4); // Жиын жиымды көшіру арқылы
// құрылады
set_i s3(s2);
// Көшіру конструкторы жұмыс істейді
s2.insert(l0);
// Элементтерді кірістіру
s2.insert(6);
for ( i = s2.begin(); i != s2.end(); i++) // Шығару
cout << *i << " ";
cout << endl;
// equal_range нəтижесін сақтауға арналған айнымалы:
pair p;
p = s2.equal_range(2);
cout << *(p.fi rst)<< " " << *(p.second) << endl;
p = s2.equal_range(5);
cout << *(p.fi rst)<< " " << *(p.second) << endl;
return 0;
}
Программаның орындалу нəтижесі:
1 2 4 6 l0
2 4
6 6
Сөздіктердегі сияқты, жиында да элементтер сұрыпталған түрде сақталады.
Қайталанатын элементтер жиынға енгізілмейді.
Жиындармен жұмыс істеу үшін стандартты кітапханада 395 б. сипаттала-
тын алгоритмдер анықталған.
Дубликатты жиындар (multiset)
Дубликатты жиындарда кілттер қайталануы мүмкін, сондықтан элементті
кірістіру операциясы əрқашан сəтті орындалады жəне
insert
функциясы
итераторды кірістірілген элементке қайтарады. Кілттері бірдей элементтер
жиында енгізілу ретімен сақталады. Ал
fi nd
функциясы итераторды алғашқы
табылған элементке қайтарады немесе берілген кілті бар элемент табылмаған
жағдайда,
end()
мəнін қайтарады.
350
Мəндері бірдей кілттермен жұмыс істеу кезінде
Достарыңызбен бөлісу: