• Tekshirdi:Boynazarov I. M Samarqand 2023 Nazariy topshiriqlar
  • "Kompyuter injiniring" fakulteti at-servis yo’nalishi 21-08 gurh talabasi Ramazonov Jamshid Fan “ Algoritmlarni loyihalash”dan




    Download 224.1 Kb.
    bet1/6
    Sana26.11.2023
    Hajmi224.1 Kb.
    #106015
      1   2   3   4   5   6
    Bog'liq
    algo 1 a
    Xizmat koʻrsatish tizimi , algort 4

    MUHAMMAD AL-XORAZMIY NOMIDAGI
    TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI SAMARQAND FILIALI
    "Kompyuter injiniring" fakulteti AT-Servis yo’nalishi
    21-08 gurh talabasi Ramazonov Jamshid
    Fan “ Algoritmlarni loyihalash”dan
    1 mustaqil ta’lim ishi


    Bajardi: Ramazonov Jamshid
    Tekshirdi:Boynazarov I. M
    Samarqand 2023


    Nazariy topshiriqlar:


      1. Algoritm murakkabligini static va dinamik o’lchovlari.Vaqt va hajm bo’yicha qiyinchiliklar



      Algoritmlarni eng yomon va o’rtacha holatlarda baholash

    1. Algoritmlarni vaqt va hajmiy murakkablik bo’yicha baholashda tekis va logarifmik solishtirma mezonlar.

    2. Taqribiy integrallash usuli va aniqligi bo’yicha hisoblash

    Algoritmga algoritm deyiladi doimiy vaqt(vaqt sifatida qayd etilgan O (1)) qiymat bo'lsa T(n) kirish hajmiga bog'liq bo'lmagan qiymat bilan cheklangan. Masalan, massivda bitta elementni olish doimiy vaqtni oladi, chunki uni topish uchun bitta buyruq bajariladi. Biroq, tartiblanmagan massivda minimal qiymatni topish doimiy vaqtdagi operatsiya emas, chunki biz massivning har bir elementini skanerlashimiz kerak. Shunday qilib, bu operatsiya chiziqli vaqtni oladi, O (n). Agar elementlarning soni oldindan ma'lum bo'lsa va o'zgarmasa, bunday algoritmni doimiy vaqt algoritmi deb atash mumkin."Doimiy vaqt" nomiga qaramay, ish vaqti vazifa hajmidan mustaqil bo'lishi shart emas, lekin ish vaqtining yuqori chegarasi bo'lmasligi kerak. Masalan, "qiymatlarni almashish" vazifasi a va b, zarur bo'lsa, natijada biz olamiz a≤b", doimiy vaqt muammosi hisoblanadi, garchi algoritmning ishlash vaqti tengsizlikning mavjudligiga bog'liq bo'lishi mumkin. a ≤ b yoki yo'q. Biroq, ma'lum bir doimiylik mavjud t, ular uchun vazifani bajarish vaqti har doim oshmaydi t.Quyida doimiy vaqtda ishlaydigan ba'zi kod misollari keltirilgan:


    Int indeksi = 5; int element = ro'yxat; agar(shart to'g'ri) keyinboshqa doimiy ish vaqti bilan ba'zi operatsiyalarni bajarish uchun i = 1 uchun 100 uchun j = 1 uchun 200 doimiy ish vaqti bilan ba'zi operatsiyalarni bajaradi


    Agar T(n) bu O ( ba'zi doimiy qiymat), bu ga teng T(n) O (1) dir.


    Ushbu algoritmda i o'zgaruvchisi 1 dan N.gacha o'zgaradi, i ning har bir o'zgarishi bilan birga, j o'zgaruvchisi ham 1 dan N ga o'zgaradi. Tashqi aylanishning har bir N takrorlanishida ichki pastadir ham N marta bajariladi. Ichki pastadir takrorlanishlarining umumiy soni N * N dir. Bu O (N ^ 2) algoritmining murakkabligini aniqlaydi. Algoritmning murakkablik tartibini taxmin qilishda faqat eng tez o'sadigan qismdan foydalanish kerak. Vazifalar aylanishi N ^ 3 + N ifodasi bilan tasvirlangan deb taxmin qiling. Bunday holda, uning murakkabligi O ga teng bo'ladi (N ^ 3). Funktsiyaning tez o'sib boruvchi qismini ko'rib chiqish, algoritmning xatti-harakatlarini N.ning ortishi bilan baholashga imkon beradi. Masalan, N = 100 bilan N ^ 3 + N = 1000100 va N = 1000000 o'rtasidagi farq atigi 100 ga teng, bu 0,01%. O ni hisoblashda, ifodalarda doimiy omillarga e'tibor bermaslik mumkin. 3N ^ 3 ish bosqichiga ega bo'lgan algoritm O (N ^ 3) deb hisoblanadi. Bu O (N) nisbati muammoning hajmiga bog'liqligini yanada aniqroq qiladi.


    Qiyinchilikni aniqlash
    Dasturning eng murakkab qismlari odatda pastadir va qo'ng'iroq qilish protseduralari. Oldingi misolda butun algoritm ikki tsikl yordamida amalga oshirildi. Agar bitta protsedura boshqasini chaqirsa, u holda protseduraning murakkabligini batafsilroq baholash kerak. Agar unda muayyan miqdordagi ko'rsatmalar bajarilgan bo'lsa (masalan, bosib chiqarish), unda bu murakkablikni baholashga deyarli ta'sir qilmaydi. Agar O (N) bosqichlar chaqirilayotgan protsedurada bajarilsa, funktsiya algoritmni sezilarli darajada murakkablashtirishi mumkin. Agar protsedura ko'chadan ichkarisiga chaqirilsa, u holda ta'sir yanada katta bo'lishi mumkin. Misol tariqasida ikkita protsedurani ko'rib chiqing: O (N ^ 3) murakkabligi bilan sekin va O (N ^ 2) murakkabligi bilan.
    procedure Slow;
    var i,j,k: integer;
    begin
    for i:=1 to N do
    for j:=1 to N do
    for k:=1 to N do
    какое-то действие}
    end;
    procedure Fast;
    var
    i,j: integer;
    begin
    for i:=1 to N do
    for j:=1 to N do
    Slow;
    end;
    procedure Both;
    begin
    Fast;
    end;
    Algoritm murakkabligining asosiy ko'rsatkichi muammoni hal qilish uchun zarur bo'lgan vaqt va talab qilinadigan xotira miqdori hisoblanadi. Shuningdek, topshiriqlar sinfi uchun murakkablikni tahlil qilganda ma'lum bir ma'lumotni - kirish hajmini tavsiflovchi ma'lum bir raqam aniqlanadi . Shunday qilib, algoritmning murakkabligi kirish hajmining funktsiyasi degan xulosaga kelishimiz mumkin.
    Algoritmning murakkabligi bir xil kirish hajmi bilan farq qilishi mumkin, ammo har xil kirish ma'lumotlari. Eng yomon , o'rta yoki eng yaxshi holatda murakkablik tushunchalari mavjud . Odatda, eng yomon ishning murakkabligi baholanadi. Vaqtning murakkabligi eng yomon holatda, berilgan o'lchamdagi masalani echishda algoritmni bajarish paytida bajariladigan operatsiyalarning maksimal soniga teng bo'lgan kirish hajmining funktsiyasi. Eng yomon holatda, kapasitiv murakkablik bu o'lchamdagi muammolarni echishda foydalanilgan xotira hujayralarining maksimal soniga teng kirish hajmi funktsiyasidir.
    Algoritmni o'sish tartibi
    Murakkablikning o'sishi tartibi (yoki aksiomatik murakkablik) katta kirish o'lchamiga ega bo'lgan algoritmning murakkablik funktsiyasining taxminiy xatti-harakatlarini tavsiflaydi. Bundan kelib chiqadiki, vaqtning murakkabligini baholashda elementar operatsiyalarni ko'rib chiqishga hojat yo'q, algoritmning bosqichlarini ko'rib chiqish kifoya qiladi.
    Algoritmning bosqichi bu ketma-ket joylashgan elementar operatsiyalar to'plami bo'lib, ularning bajarilish vaqti kirish hajmiga bog'liq emas, ya'ni u yuqorida qandaydir doimiy bilan chegaralangan.
    Asimptotik baholash turlar
    O - eng yomon holat
    F (n)> 0 murakkabligini , g (n)> 0 tartibidagi funktsiyani , kirish o'lchamini n> 0 ko'rib chiqing . Agar f (n) = O (g (n)) va o'zgarmas kattaliklar ham bor c> 0 , n 0 > 0 , keyin 0 n 0 .
    Bu holda g (n) funktsiya f (n) ning asemptomatik ravishda aniq qiymatidir. Agar f (n) algoritmning murakkabligi funktsiyasi bo'lsa, unda murakkablik tartibi f (n) - O (g (n)) deb belgilanadi.
    Bu ibora g (n) dan doimiy omilgacha tez o'smaydigan funktsiyalar sinfini belgilaydi.

    Ko'pgina algoritmlar xotira hajmi va tezligi o'rtasida tanlovni taklif qiladi.


    Muammoni
    tezroq, katta hajmdagi xotiradan foydalangan holda yoki ozroq hajmni olib, sekinroq hal qilish mumkin.
    Bu holatda odatiy misol eng qisqa yo'llarni qidirish algoritmi hisoblanadi. Tarmoq
    shaklida shahar xaritasini taqdim etib, siz ushbu tarmoqning har qanday ikkita nuqtasi
    orasidagi eng qisqa masofani aniqlash uchun algoritm yozishingiz mumkin. Bu
    masofalarni kerak bo'lganda hisoblamaslik uchun barcha nuqtalar orasidagi eng qisqa masofani ko'rsatib, natijalarni jadvalga saqlashimiz mumkin. Berilgan ikkita nuqta orasidagi eng qisqa masofani aniqlashimiz kerak bo'lsa, biz shunchaki jadvalning tugagan masofasini olishimiz mumkin.
    Natija bir zumda olinadi, ammo bu juda katta hajmdagi xotirani talab qiladi. Katta
    shahar xaritasida o'n minglab fikrlar bo'lishi mumkin. Keyin, yuqorida tavsiflangan jadvalda 10 milliarddan ortiq hujayralar bo'lishi kerak. Bular Algoritmning ishlashini yaxshilash uchun qo'shimcha 10 Gb xotirani ishlatish kerak.Ushbu qaramlikdan kosmik-vaqt murakkabligi g'oyasi kelib chiqadi. Ushbu yondashuv bilan, algoritm bajarilish tezligi va iste'mol qilinadigan xotira nuqtai nazaridan baholanadi.
    Vaqtinchalik murakkablikka e'tiborni qaratamiz, ammo shunga qaramay, biz iste'mol qilingan xotiraning hajmini aniq belgilaymiz.

    Integralni taqribiy hisoblash va uning tadbiqlari haqida. Integral tushunchasi matematik analizning asosiy tushunchalaridan biri bo’lib matematika, fizika, mexanika va boshqa fanlarning eng kuchli quroli hisoblanadi. Egri chiziqlar bilan chegaralangan yuzlarni, egri chiziq yoylari va uzunliklarini, hajmlarni, ishlarni, tezliklarni, yo’llarni, inersiya momentlarini va hokazolarni hisoblashga ishlarining hammasi integral hisoblashga keltiriladi. Hozirgi kunda kompyuter va axborot texnologiyalari taraqqiyotida katta yutuqlarga erishilmoqda. Hisoblash usullarini kompyuterlarda tadbiq qilish rivojlanmoqda. Hozirgi axborot texnologiyalari asri davrida ta’lim samaradorligini oshirish uchun yangi pedagogik va axborot-kommunikatsiya texnologiyalaridan foydalanib amaliy mashg`ulotlarini olib borish talab darajasiga ko`tarilgan. Oliy o’quv yurti ta’limi dasturida keltirilgan mavzular bo`yicha axborotlashtiriladigan barcha masala va misollarni turli xildagi dasturlar orqali yechimini hosil qilish mumkin.





    Download 224.1 Kb.
      1   2   3   4   5   6




    Download 224.1 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    "Kompyuter injiniring" fakulteti at-servis yo’nalishi 21-08 gurh talabasi Ramazonov Jamshid Fan “ Algoritmlarni loyihalash”dan

    Download 224.1 Kb.