|
Hisoblash modellari va algoritmning murakkabligi
|
bet | 3/4 | Sana | 14.05.2024 | Hajmi | 45 Kb. | | #232183 |
Bog'liq 2-Maruza A va BHisoblash modellari va algoritmning murakkabligi ikki farqli narsalardir, lekin ularga o‘zaro aloqa bor, quyidagi shaklda:
Hisoblash Modellari: Hisoblash modellari, algoritmlarni tavsiflash uchun kiritilgan formal usullardir. Ular algoritmning tavsiflanishi, aniqlanishi va boshqa komponentlari bilan bir-biriga bog‘liq hisoblash jarayonini ta’minlaydi. Ba’zi mashhur hisoblash modellalari Turing mashinasi, lambda kalkuli, Skolm kalkuli kabi modellar hisoblanadi. Bu modellalar odatda qanchalik oddiy va universal ekanligiga qarab algoritmni ifodalash va tushuntirishda ishlatiladi.
Algoritmlarning Murakkabligi: Algoritm murakkabligi esa algoritmdagi muammolarni yoki amallarni bajarish jarayonidagi murakkablik darajasini ta’minlaydi. Bu murakkablik odatda algoritmdagi amalni bajarish vaqti, xotirani ishlatish darajasi, resurslarni (masalan, protsessor va xotira) ishlatish miqdori, algoritmning qat’iy amal qilish muammolari va boshqalar kabi ko‘rsatkichlar orqali o‘lchalanadi.
Murakkablikning asosiy resurslari algoritmning bajarilishi uchun zarur bo‘lgan vaqt, xotira va kompyuter resurslarini olishni tushunish uchun kerak. Ularning qismlarini quyidagicha ko‘rsatish mumkin:
Vaqt (Time): Algoritmdagi barcha amallarni bajarish uchun sarflangan vaqt miqdori. Vaqt murakkabi, algoritmni bajarish vaqti bilan bog‘liqdir va algoritmning har bir amalni bajarish vaqti, boshqa so‘z bilan, bajarilgan amallarning jami vaqti hisoblanadi. Algoritmlar o‘rtasidagi murakkablikni taqqoslashda vaqt murakkabi juda muhimdir, chunki odam odatda vaqtning cheklangan resurslaridan biri ekanligi uchun murakkab algoritmlarni iste’mol qilishni tanlaydi.
Xotira (Memory): Algoritmda ishlatilgan yaddash miqdori. Bu murakkablik turi xotira murakkabi sifatida ataladi va algoritmning bajarilishi uchun qancha xotira kerakligini ko‘rsatadi. Xotira murakkabi algoritmni amalga oshirish va yordamchi ma’lumotlar saqlash jarayonlarini qanday bajarishiga bog‘liqdir. Agar algoritm odatda ko‘p xotira ishlatadigan operatsiyalarga ega bo‘lsa, bu algoritm murakkablikni oshiradi.
Resurslar: Resurslar algoritmda bajarilayotgan amallar uchun ishlatilgan barcha kompyuter va qurilma resurslarining miqdori. Bu, masalan, protsessor kuchini, xotirani, disk xotirasini, kompyuter tarmoqlarining ishlatish darajasi va boshqalar kabi kompyuter resurslarini o‘z ichiga oladi. Bu resurslar murakkablikni o‘lchashda muhimdir, chunki algoritmning murakkabligi boshqa dasturlash tillari yoki algoritmlar bilan solishtirish uchun kerak bo‘lgan resurslar miqdori bilan bog‘liqdir.
Bu asosiy resurslar algoritmning murakkabligini o‘lchashda muhimdir va algoritmlarni solishtirish, optimallashtirish va tanlashda yordam beradi. Har bir resurs uchun murakkablikni o‘lchash uchun xususiy algoritmlar va usullar mavjud bo‘lsa-da, vaqt va xotira murakkablari keng qamrovli algoritmlarning asosiy tushunchalari hisoblanadi.
|
| |