standart algoritmlar va iteratorlar

PPTX 51 sahifa 582,6 KB Bepul yuklash

Sahifa ko'rinishi (5 sahifa)

Pastga aylantiring 👇
1 / 51
standart algoritmlar va iteratorlar standart algoritmlar va iteratorlar allamov oybek reja c ++ da algoritmlar min / max (min/max) saralash (sorting) ikkilik qidiruv (binary search ) o'zgartirilmaydigan ketma-ketlik modifikatsiyalari (non-modifying sequence operations) ketma-ketlik operatsiyalarini o'zgartirish (modifying sequence operations) bo’lishlar (partitions) birlashtirish (merge) yig'ma (heap) c++da iteratorlar c ++ da algoritmlar dasturlashda, algoritm bu - vazifani bajarish uchun dastur tomonidan ishlatiladigan qadamlar to'plamidir. c ++ da algoritmlarni o'rganganingizdan so'ng , o'z vaqtingizni tejash va dasturlarning tezroq ishlashini ta'minlash uchun ularni ishlatishingiz mumkin. har doim yangi algoritmlar ishlab chiqilmoqda, lekin c++ dasturlash tilida ishonchli ekanligi isbotlangan algoritmlardan foydalanamiz. c++ daturlash tilida elementlarning belgilangan diapazonida ishlaydigan funktsiyalar guruhini belgilaydi. algoritmlar muammolarni hal qilish yoki funksionallikni ta'minlash uchun ishlatiladi. algoritmlar faqat qiymatlar ustida ishlaydi; ular saqlagichning hajmiga yoki saqlanishiga ta'sir qilmaydi. oddiy algoritmlarni funktsiya doirasida amalga oshirish mumkin. murakkab algoritm-lar ularni amalga oshirish uchun bir nechta funktsiyalarni yoki hatto sinfni talab qilishi mumkin . …
2 / 51
birlashtirish) yig'ma (make_heap, push_heap) min / max (min/max) nomi bajaradigan vazifasi min eng kichikini qaytardi maksimal eng kattasini qaytardi minmax eng kichik va eng katta elementlarni qaytardi min_element diapazondagi eng kichik elementni qaytardi max_element intervaldagi eng katta elementni qaytardi minmax_element diapazondagi eng kichik va eng katta elementlarni qaytardi min algoritmi max algoritmi minmax algoritmi massivdagi eng katta va kichik elementlarni topish saralash (sorting) nomi bajaradigan vazifasi sort elementlarni oraliqda saralaydi stable_sort ekvivalentlar tartibini saqlaydigan elementlarni saralaydi partial_sort elementlarni intervalgacha qisman saralaydi partial_sort_copy nusxalash va qisman saralaydi is_sorted diapazon tartiblanganligini tekshiradi is_sorted_until dastlabki saralanmagan elementni topadi nth_element elementni diapazonda saralaydi sort algoritmi algoritmning murakkabligi n*log2(n) sorting by function sorting by struct stable sort if enough extra memory is available, linearithmic in the distance between first and last: performs up to n*log2(n) element comparisons (where n is this distance), and up to that many element moves. otherwise, polyloglinear in that distance: performs …
3 / 51
lashishi set_intersection ikkita tartiblangan diapazonning kesishishi set_difference ikkita tartiblangan diapazonning farqi set_symmetric_difference ikkita tartiblangan diapazonning simmetrik farqi merge algoritmi partition algoritmi nomi bajaradigan vazifasi is_partitioned diapazonning bo'linishini tekshiradi partition ikkala qism oralig’i qaytaradi stable_partition ikki qismga bo'linish oralig'i - barqaror buyurtma partition_copy bo'lim oralig'i ikkiga bo'linadi partition_point bo'lim nuqtasini oladi heap algoritmi nomi bajaradigan vazifasi push_heap elementni uyum oralig'iga suradi pop_heap uyma oralig'idan pop-element make_heap uyumni oraliqdan xosi qiladi sort_heap uyum elementlarini saralash is_heap agar diapazon to'planganligini tekshiradi is_heap_until birinchi elementni yig'ma tartibda emasligini topadi heap algoritmiga misol c++da iteratorlar konteynerlar va iteratorlar “container" konteyneri - bu obyektlar bir xil turdagi qiymatlar to'plamini saqlashga moslashtirilgan sinf ("massiv" tushunchasini umumlashtirish). konteynerning tarkibiga kirish uchun vositani ta'minlaydi. c ++ standart kutubxonasida ushbu kirish moslamalari iterator deb nomlangan "qator elementiga ko'rsatgich" tushunchasini umumlashtirishga asoslangan. iteratorlar juftligi “range" diapazonini o'rnatadi - iteratorni oldinga siljitish bilan hisoblanadigan qiymatlar ketma-ketligini belgilash, juftlikdagi birinchi iterator birinchi elementdan …
4 / 51
agi masofa == oraliqdagi elementlar soni. // qatorning barcha elementlarini ketma-ket ro'yxatlash. while (begin != end) cout.put(*begin++); // > world konteyner tarkibini o’zgartirish konteynerning ichki tuzilishiga qarab, har qanday ko'rsatgichga tegishli operatsiyalar uning iteratorlarida samarali bajarilishi mumkin emas. masalan, bog'langan ro'yxatga kirishda raqamli indeks orqali kirish ko'p sonli operatsiyalarni talab qilishi mumkin. qaytaruvchilar samarasiz ishlarni qo'llab-quvvatlamasligi mumkin. iteratorlarning xarakterli turlarini ajratib ko'rsatish uchun c ++ standarti "iterator toifalari" ni belgilaydi. u yoki boshqa toifaga tegishli iterator uni qo'llab-quvvatlaydigan operatsiyalar to'plami bilan belgilanadi. qoidaga ko'ra konteyner tarkibini o'zgartirish uchun iteratordan foydalanish mumkin emas (maxsus adapter iteratorlaridan tashqari). iterator toifalari kirish iteratorini (input iterator) qiymatlar ketma-ketligini faqat bitta o'qish (kiritish) uchun mo'ljallangan. kirish iteratori tomonidan qo'llab-quvvatlanadigan asosiy struktura quyidagicha ko'rinishda bo’ladi: value value = *it++; // keyingi qiymatni o'qish, it – iterator. iteratorni joriy pozitsiyadan foydalangan holda oldinga (inkrement) va so’ngi (operatsiyalar * va ->) holatiga o'tkazish mumkin. tenglik va tengsizlik uchun …
5 / 51
i tomonlama iterator ikki yo'naltirilgan iterator bu "bir tomonlama iterator" tushunchasining kengaytmasidir. ikki yo'nalishli iterator ikki yo'nalishda harakatlanishni ta'minlaydi: oldinga (++) va orqaga (- operatsiyani ishlatib). tasodifiy kirish iteratori tasodifiy kirish iteratori bu "ikki tomonlama iterator" tushunchasining kengaytmasi bo'lib, uning xatti-harakatlarida massiv elementiga oddiy ko'rsatgich bilan o'xshashdir (bu tasodifiy kirish iteratorining alohida holidir). tasodifiy kirish iteratori indeks (operator [])) bilan murojaat qilish, har ikki yo'nalishda ma'lum bir pozitsiyalar bo'yicha siljish (butun sonni qo'shish va ayirish), “kamroq” va “ko'proq” ni ajratish va taqqoslash orqali masofani hisoblash (masofaga mos keladigan masofani hisobga olgan holda) belgisi bor. iterator sarlavha fayli iterator_traits sinfi xarakteristikasi traits class shablon sinfi deb ataladi, uning parametrlari ba'zi parametrlar, odatda tiplar va o’zgarmaslar to'plamini ta'minlaydi, ular qaysidir ma'noda traits class ga shablon parametri sifatida almashtirilgan turni tavsiflaydi. "yorliqlar sinfi (tag class)" teglari - bu nominal qiymat (doimiy nom) sifatida xizmat qiladigan hech qanday a'zo (bo'sh) bo'lmagan sinf. bu qiymat …

Ko'proq o'qimoqchimisiz?

Barcha 51 sahifani Telegram orqali bepul yuklab oling.

To'liq faylni yuklab olish

"standart algoritmlar va iteratorlar" haqida

standart algoritmlar va iteratorlar standart algoritmlar va iteratorlar allamov oybek reja c ++ da algoritmlar min / max (min/max) saralash (sorting) ikkilik qidiruv (binary search ) o'zgartirilmaydigan ketma-ketlik modifikatsiyalari (non-modifying sequence operations) ketma-ketlik operatsiyalarini o'zgartirish (modifying sequence operations) bo’lishlar (partitions) birlashtirish (merge) yig'ma (heap) c++da iteratorlar c ++ da algoritmlar dasturlashda, algoritm bu - vazifani bajarish uchun dastur tomonidan ishlatiladigan qadamlar to'plamidir. c ++ da algoritmlarni o'rganganingizdan so'ng , o'z vaqtingizni tejash va dasturlarning tezroq ishlashini ta'minlash uchun ularni ishlatishingiz mumkin. har doim yangi algoritmlar ishlab chiqilmoqda, lekin c++ dasturlash tilida ishonchli ekanligi isbo...

Bu fayl PPTX formatida 51 sahifadan iborat (582,6 KB). "standart algoritmlar va iteratorlar"ni yuklab olish uchun chap tomondagi Telegram tugmasini bosing.

Teglar: standart algoritmlar va iterato… PPTX 51 sahifa Bepul yuklash Telegram