Algoritm murakkabligi va samaradorligi tushunchalari


Algoritmlarni murakkabligini static va dinamik o`lchovlari.Vaqt va hajm bo`yicha qiyinchiliklari



Download 13,93 Kb.
bet2/3
Sana08.06.2022
Hajmi13,93 Kb.
#644381
1   2   3
Bog'liq
2 mavzu

Algoritmlarni murakkabligini static va dinamik o`lchovlari.Vaqt va hajm bo`yicha qiyinchiliklari :
Biz algoritmlarni o’zaro baholashimizda ularga kiruvchi ma’lumotni ham

e’tiborga olishimizga to’g’ri keladi. Chunki ayni bir saralash algoritmi uchun


1000 ta kiruvchi elementni saralash 1s, 100 000 element uchun esa 4-5
soniya ketadigan bo’lsa, boshqa bir algoritm uchun esa bor-yo’g’i 2 s ketishi
mumkin. Bunday sharoitda qaysi algoritm yaxshi ekanini aytish mushkuldir.
Umumiy holatda esa algoritmni murakkabligini ayni bir kattalik bilan
baholash mumkin bo’ladi. Buni quyidagicha tushunish mumkin: agar
algoritmga kiruvchi N ma’lumotlar oshganida algoritmning bajarilish vaqti f(N)
funksiya bilan bir xilda ortsa algoritm O(f(N)) murakkablikka ega deyiladi.
Keling, yaxshisi A[NxN] matritsaning har bir qatoridagi maksimal
elementni topishni ko’rib chiqamiz:

Ushbu algoritmda i o’zgaruvchi 0 dan N-1 gacha o’zgarib kelyapti hamda uning har bir o’zgarishida j o’zgaruvchi ham shu oraliqda o’zgaryapti. Demak bunda jami N*N marta takrorlanish sodir bo’lyapti. Bundan esa f(N) = N*N ga teng bo’ladi va algoritmning murakkabligi O(N*N) ekanligini aniqlashimiz mumkin.


Endi algoritmni murakkablik darajasini baholashni ko’rib chiqaylik. Bunda algoritmdagi eng tez o’suvchi qismdan foydalanish kerak bo’ladi.
Tasavvur qiling algoritm N^3 + N murakkablikka ega bo’lsin. Bunda biz murakkablikni O(N^3) deb olishimiz yetarli bo’ladi. Chunki bu yerda tez o’suvchi qism bu N^3. Ya’ni +N ta qo’shimcha amalni hisoblashning hojati qolmaydi. Misol uchun N=100 bo’lsin, shunda jami 1000100 ta amal bajariladi va bu N^3 dan atigi 0.01% gagina farq qiladi.

2.Algoritmlarning eng yomon va o`rtacha holatlarda baholash :


Algoritmni buyurtma qilishning murakkabligini baholash algoritmlar murakkabligining

yuqori chegarasidir. Agar dastur katta murakkablik darajasiga ega bo'lsa, bu algoritm


haqiqatan ham uzoq davom etadi degani emas. Ba'zi bir ma'lumot to'plamlarida,
algoritmni bajarilishi ularning murakkabligi asosida taxmin qilishdan ancha kam vaqt
talab etadi. Masalan, A vektorda berilgan elementni qidiradigan kodni ko'rib
chiqing. Agar kerakli element ro'yxatning oxirida bo'lsa, unda dastur N bosqichni
bajarishi kerak bo'ladi. Bunday holda, algoritmning murakkabligi O (N) dir. Ushbu eng
yomon holatda, algoritmning ishlash vaqti maksimal bo'ladi. Boshqa tomondan, kerakli
narsa birinchi holatda ro'yxatda bo'lishi mumkin. Algoritm faqat bitta qadamni bajarishi
kerak. Bunday holat eng yaxshi deb nomlanadi va uning murakkabligi O (1) deb
baholanishi mumkin.

function Locate(data: integer): integer;


var

i: integer;


fl: boolean;

begin

fl:=false; i:=1;

while (not fl) and (i<=N) do


begin

if A[i]=data then


fl:=true

else

i:=i+1;

end;

if not fl then


i:=0;

Locate:=I;


end;




Download 13,93 Kb.

Do'stlaringiz bilan baham:
1   2   3




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish