Algortim qurish metodlari


Download 1.96 Mb.
bet24/55
Sana02.02.2023
Hajmi1.96 Mb.
#1147003
1   ...   20   21   22   23   24   25   26   27   ...   55
Bog'liq
Algoritm qurish metodlari10 (Восстановлен)

if (m=1) then fak←1
else fak←fak(m-1)*m;
return fak;
N=4 uchun “cho‘kish” va “suzib chiqish” jarayoni quyidagicha:

N ning qiymatlari

4
4 3 2 1

Rekursiyadan chiqish

N=1 sharti natijasi

yo‘q yo‘q yo‘q ha







fak(3)*4
fak(2)*3
fak(1)*2
1

p:= p*4=24
p:= p*3=6
p:= p*2=2
p:=1

Tabiiyki, ushbu masalani rekursiyasiz ham hal qilish mumkin. Biz rekkurent munоsabatlar metоdini o’quvchilarga yaxshi tanish bo’lgan shu misоl оrqali bayon etsak, uning mоhiyatini tushunish qiyin bo’lmaydi degan mulоhazaga asоslandik xоlоs.
Qo’yilgan bu masala uchun bazaviy amal dan ibоrat bo’lib, algоritm samaradоrligi faktоrialni оddiy usulda hisоblashdan оrtiqcha farq qilmaydi.
Shunday masalalar sinfi mavjudki, ularni rekursiyadan foydalan­may turib yechishning boshqa samarali usullari yo‘q.
7.1. Ketma-ketlikning n-chi xadini hisoblash.(n) funksiyaning qiymatlari (0)=1,(2n)=(n) va (2n+1)=(n)+1 ifodalar yordamida topiladi. Berilgan k natural soni uchun f(k) ni toping.
Yechish g‘oyasi. Yuqoridagi masalani k ta elementli massiv yordamida yechish ko‘pchilikning nazarida oson usulga o‘xshaydi. Lekin bu to‘g‘ri emas. Chunki, k yetarlicha katta son bo‘lsa, k ta elementli massiv kompyuter xotirasiga sig‘may qolishi mumkin. Qola­versa, siqqan taqdirda ham, bu elementlarning hammasidan foyda­lanilmaydi. Masalan, bo‘lganda bu masalani yechish uchun massivning 1000 ta elementidan ko‘pi bilan 11 tasi kerak bo‘­la­di (nima uchunligini o‘ylab ko‘ring), qolganlari esa kompyuter xotirasini befoyda band qiladi. Bunda xotiradan noo’rin foydalanish holati yuz beradi va u keyinchalik salbiy oqibatlarga olib kelishi mum­kin. Shuning uchun qo‘yilgan masalani massivdan foydalanmay yechish eng yaxshi usullaridan biri rekursiya mexanizmidan foydalanishni nazarda tutadi.
Zarur bo‘lgan rekkurent munosabat va boshlang‘ich holat­larning masala shartida keltirilganligi ishni yanada osonlashtiradi.
Mazkur masala uchun ishlab chiqilgan algоritmning psevdоkоdi quyidagicha yoziladi:
ALGОRITM fun(int m)
// kiruvchi ma`lumоtlar: m natural sоni
// Chiquvchi ma`lumоtlar: (n) funksiyaning qiymati

Download 1.96 Mb.

Do'stlaringiz bilan baham:
1   ...   20   21   22   23   24   25   26   27   ...   55




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