Mavzu: Bir o’lchovli massivlarni funksiya parametri sifatida qo’llanilishi


Rekursiv jarayonlarni tashkil etish


Download 113.77 Kb.
bet8/9
Sana31.01.2024
Hajmi113.77 Kb.
#1831301
1   2   3   4   5   6   7   8   9
Bog'liq
Документ (1)

Rekursiv jarayonlarni tashkil etish

Funksiya o’ziga o’zi to’g’ridan-to’g’ri yoki qandaydir vosita orqali murojat qilish jarayoniga rekursiya va bunday funksiya rekursiv funksiya deyiladi.

Har qanday to’g’ri tuzilgan rekursiya asosini ikkita shart tashkil qiladi.

1.Rekursiya asos sharti

2.Funksiyaning o’ziga o’zlashtirilgan argument bilan murojaat qilish.

Rekursiv funksiya qaysidir vaqta kelib o’ziga murojaat qilishni to’xtatishi kerak bo’ladi. Aynan shu narsani rekursiya asos sharti ta’minlab beradi.

Rekursiv funksiya qaysidir vaqta kelib o’ziga murojaat qilishni to’xtatishi kerak bo’ladi. Aynan shu narsani rekursiya asos sharti ta’minlab beradi.

Keyingi shartda o’zgartirilgan argument deganda, odatda masala boshidagi argumentdan kichikroq argument tushiniladi (ba’zi hollarda kattaroq bo’lishi mumkin). Bu narsa ham juda muhim, chunki bir xil argument bilan qayta-qayta murojaat qilinganda yoki argument notog’ri o’zgartirilganda funksiya o’zini cheksiz marta chaqirishiga to’g’ri kelib qoladi.

Tree, Graph, Heap, QuickSort, MergeSort, … Bu ro’yhatni juda uzoq davom ettirish mumkin. Ayniqsa, murakkab tuzilmalar bo’lgan Tree va Graphlarda rekursiya har qadamda uchraydi. Dasturchilikni esa ularsiz tasavvur qilib bo’lmaydi, bu esa o’z o’rnida rekursiya qanchalik muhimligini belgilab beradi.

Yana bir qiziq ma’lumot, shunday dasturlash tillari borki ularda umuman takrorlanish operatorlari yo’q va bu borada butunlay rekursiyaga tayanadi. Haskell va Erlang shular jumlasidan.

Funktsiya to‘g‘ri rekursiv deyilаdi, аgаr tаnаsidа o‘zigа murоjааt bo‘lsа. Funktsiya bоshqа funktsiyani chаqirsа vа bu funktsiya o‘z nаvbаtidа birinchi funksiyani chaqirsa, bundаy funktsiya nisbiy rek


Statik ma’lumotlar tuzilmasi vaqt o’tishi bilan o’z o’lchamini o’zgartirmaydi. Biz har doim dastur kodidagi statik ma’lumotlar tuzilmasiga qarab ularning o’lchamini bilishimiz mumkin. Bunday ma’lumotlarga teskari ravishda dinamik ma’lumotlar tuzilmasi mavjud bo’lib, bunda dastur bajarilishi davomida dinamik ma’lumotlar tuzilmasi o’lchamini o’zgartirishi mumkin.
Dinamik ma’lumotlar tuzilmasi – bu qandaydir bir qonuniyatga asoslanib shakllangan, lekin elementlari soni, o’zaro joylashuvi va o’zaro aloqasi dastur bajarilishi davomida shu qonuniyat asosida dinamik o’zgaruvchan bo’lgan ma’lumotlar tuzilmasidir. Dinamik ma’lumotlar tuzilmasi 1-rasmdagidek klassifikatsiyalanadi.
1-rasm. Dinamik ma’lumotlar tuzilmasi klassifikatsiyasi
Dasturlarda dinamik ma’lumotlar tuzilmasidan ko’pincha chiziqli ro’yhatlar, steklar, navbatlar va binar daraxtlar ishlatiladi. Bu tuzilmalar bir-biridan elementlarning bog’lanish usuli va ular ustida bajarilishi mumkin bo’lgan amallari bilan farqlanadi. Dinamik tuzilmalar massiv va yozuvdan farqli ravishda operativ xotirada ketma-ket sohalarda joylashmaydi. Ixtiyoriy dinamik tuzilma elementi 2 ta maydondan tashkil topadi: tuzilma tashkil etilishiga sabab bo’layotgan informatsion maydon va elementlarning o’zaro aloqasini ta’minlovchi ko‘rsatkichli maydon.




  1. Download 113.77 Kb.

    Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling