unordered_set ning funksiya – a’zolari




Download 2.03 Mb.
bet4/4
Sana16.06.2022
Hajmi2.03 Mb.
#23803
1   2   3   4
Bog'liq
3-ma\'ruza. Assotsiativ va tartiblanmagan konteynerlar
science-subject-for-elementary-3rd-grade-the-water-cycle
unordered_set ning funksiya – a’zolari:

Nomi

Izoh

at

Ko'rsatilgan elementga indeks tekshiruvi bilan kirishni ta'minlaydi

operator[]

Belgilangan elementga kirishni ta'minlaydi

front

Birinchi elementga kirishni ta'minlaydi

back

oxirgi elementga kirishni ta'minlaydi

data (C++11)

Massivning birinchi haqiqiy elementiga ko'rsatgichni qaytaradi



unordered_set ning funksiya – a’zolari

Nomi

Izoh

get_allocator

Bog'langan ajratuvchini qaytaradi.

operator=

Konteynerdagi qiymatlarni o'rnatadi



unordered_set ning modifikatorlari:

Nomi

Izoh

clear

Konteynerni tozalaydi.

insert

Konteynerga element qo’shadi.

emplace

Elementlarni "joyida" quradi va berilgan pozitsiyadan boshlab ularni joylashtiradi.

emplace_hint

Foydalanish joyidagi struktura elementlari.

erase

Konteynerdan element ochirish.

swap

Tarkibni almashtirish.

count

Muayyan kalitga mos keladigan elementlar sonini qaytaradi.

find

Ma'lum bir kalitga ega bo'lgan elementni topadi.

equal_range

Ma'lum bir kalit uchun elementlar to'plamini qaytaradi.

bucket_count

Buketlar sonini qaytaradi.

max_bucket_count

Buketlar sonini maksimalini qaytaradi.

bucket_size

Aniq buketdagi elementlar soni.

bucket

Aniq kalitlar uchun buket qaytarish.



Hash Table bilan ishlovchi funksiyalar:



Nomi

Izoh

load_factor

Bir buketdagi elementlarning o'rtacha sonini qaytaradi.

max_load_factor

O’rtach elementlar sonini maksimal boshqarish.

rehash

Talab qilinganidan kam bo'lmagan holda hesh jadvalini qayta tiklash.

reserve

Kamida belgilangan sonlar uchun joy saqlaydi.
Bu hash jadvalini tiklaydi.

hash_function

Element qiymatlarini xesh qilish uchun ishlatiladigan funktsiya.

key_eq

Kalitlarning tengligini tekshirish funktsiyasini qaytaradi.



unordered_set uchun qayta yuklanmagan operatorlar:



Nomi

Izoh

operator==

Bir qatordagi qiymatlarni leksikografik jihatdan taqqoslaydi

operator!=

unordered_set ga misol:





unordered_set::swap ga misol:





unordered_set konstruktoriga misol:

std::unordered_set::begin:


std::unordered_set::bucket:




std::unordered_set::bucket_count:






std::unordered_set::bucket_size:




std::unordered_set::cbegin:


std::unordered_set::clear:


std::unordered_set::count:


std::unordered_set::empty:


std::unordered_set::erase:


std::unordered_set::find:


std::unordered_set::hash_function:

std::unordered_set::insert:
insert funksiyasini 6 ta turi mavjud. Ular quyidagicha:
1) pair insert ( const value_type& val );
2) pair insert ( value_type&& val );
3) iterator insert ( const_iterator hint, const value_type& val );
4) iterator insert ( const_iterator hint, value_type&& val );
5) template
void insert ( InputIterator first, InputIterator last );
6) void insert ( initializer_list il );






key_type() – funksiyasi



  • typedef Key key_type;




load_factor() – funksiyasi:


Maqsadi - blokdagi elementlarning o'rtacha sonini hisoblaydi.
float load_factor() const;
A'zo funktsiyasi (float) unordered_set::size() / (float) unordered_set::bucket_count(), har bir blok uchun elementlarning o'rtacha sonini qaytaradi.






= operatori:
Maqsadi – hesh jadvalni nushalash.
unordered_set& operator=(const unordered_set& right); unordered_set& operator=(unordered_set&& right);

unordered_set-dagi mavjud elementlarni yo'q qilgandan so'ng ,, operator = nusxa oladi yoki tarkibni to'g'ridan-to'g'ri unordered_set-ga o'tkazadi.


typedef Alloc::pointer pointer;:
Maqsadi – boshqariladigan ketma-ketlikning elementiga ko'rsatgich sifatida ishlatilishi mumkin bo'lgan obyekt bilan ishlash.




IsReference() – funksiyasi:
Maqsadi – Turi boshqariladigan ketma-ketlikning elementi uchun havola sifatida ishlatilishi mumkin bo'lgan obyekt bilan ishlash.
typedef Alloc::reference reference;




rehash() – funksiyasi:
Maqsadi – Hash jadvalini qayta yaratish.
void rehash(size_type nbuckets);
Ushbu funktsiya, hech bo'lmaganda nbuket bo'lishi uchun konteynerlar sonini o'zgartiradi va kerak bo'lganda hash jadvalini tiklaydi.
unordered_set() – konstruktorlar:



Birinchi konstruktor to'g'ri chizilgan ketma-ketlikning nusxasini belgilaydi.
Ikkinchi konstruktor boshqariladigan bo'sh ketma-ketlikni belgilaydi.
Uchinchi konstruktor sakkizinchi konstruktorlar o'rtasida to'rtinchi o'ng tomon siljish bilan ketma-ketlikning nusxasini bildiradi. Nusxalash uchun elementlarni belgilash uchun initializer_list-dan foydalaning.
To'qqizinchi konstruktor element qiymatlarining ketma-ketligini qo'shadi [birinchi, oxirgi).
Barcha konstruktorlar bir qator saqlanadigan qiymatlarni ishga tushiradilar. Nusxa tuzuvchi uchun qiymatlar o'ng tomonda olinadi. Aks holda:
Konteynerlarning minimal soni - bu argument, bucket_count, agar mavjud bo'lsa; aks holda, bu N0 amalga oshirish bilan belgilangan qiymat sifatida tasvirlangan standart qiymat.
hash funktsiyasi obyekti, agar mavjud bo'lsa, hash argumentidir; aks holda bu Hash ().
Foydalanilgan adabiyotlar:

  • https://ru.cppreference.com/w/cpp/container/unordered_set

  • https://ru.cppreference.com/w/cpp/container/unordered_set/operator%3D

  • https://docs.microsoft.com/ru-ru/cpp/standard-library/unordered-set-functions?view=vs-2019

  • http://www.cplusplus.com/reference/unordered_set/unordered_set/unordered_set/

  • http://www.cplusplus.com/reference/unordered_set/unordered_set/begin/

  • http://www.cplusplus.com/reference/unordered_set/unordered_set/bucket/

  • http://www.cplusplus.com/reference/unordered_set/unordered_set/bucket_count/

  • http://www.cplusplus.com/reference/unordered_set/unordered_set/bucket_size/

  • https://docs.microsoft.com/ru-ru/cpp/standard-library/unordered-set-class?view=vs-2017#rehash

  • https://docs.microsoft.com/ru-ru/cpp/standard-library/map-class?view=vs-2017



Xulosa
Assotsiativ konteynerlar:

  • set – faqat kalitlarni saqlaydi.

  • map – kalit va qiymatlarni saqlaydi.

Tartibga solinmagan assotsiativ konteynerlar:

  • unordered set – faqat kalitlarni saqlaydi.

  • unordered map – kalit va qiymatlarni saqlaydi.

Ushbu konteynerlarning kalitlari noyob – ya’niy takrorlanmaydi. Lekin kalitlari takrorlanadigan konteynerlar ham bor. Ular quyidagicha:
multiset, multimap, unordered multiset, unordered multimap.

Download 2.03 Mb.
1   2   3   4




Download 2.03 Mb.

Bosh sahifa
Aloqalar

    Bosh sahifa



unordered_set ning funksiya – a’zolari

Download 2.03 Mb.