Ma’ruza 3. Tahlil asoslari. Dastlabki ma'lumotlarning o'lchovini aniqlash
REJA:
Algoritmli tahlil tushunchasi.
Dastlabki ma'lumotlarning o'lchovini aniqlash
Asosiy tushunchalar : tahlil, maʼlumotlar, maʼlumotlar sifati, maʼlumotlarni oʻlchash, ish vaqti, masshtablash, samarali, O-katta, murakkablik, katta O , tezlikni baholash, o'sish tezligi, murakkablik taxmini, doimiy vaqt, logarifmik vaqt, chiziqli vaqt, ko'p nomli vaqt, faktorial vaqt.
1. Algoritmli tahlil haqida tushuncha.
Algoritm tahlili _ algoritmlarni amaliy masalalarda samarali qo'llash uchun etarli darajada tushunish kaliti . Bizda har bir dastur boʻyicha toʻliq tajribalar va chuqur matematik tahlillar oʻtkazish imkoniyati boʻlmasa-da , biz turli algoritmlarni solishtirish va ularni quyidagi maqsadlarda qoʻllashimiz uchun algoritmlarimizning asosiy ishlash xususiyatlarini oʻrganishga yordam berish uchun ham empirik test, ham taxminiy tahlildan foydalanishimiz mumkin. amaliy maqsadlar.
Hisoblashdan foydalangan holda murakkab algoritmning ishlashini aniq tasvirlash g'oyasi bir qarashda dahshatli istiqbol bo'lib tuyuladi, shuning uchun biz batafsil matematik tadqiqot natijalari uchun tez-tez tadqiqot adabiyotlariga murojaat qilamiz. Turli usullarni solishtirganda, biz mustahkam nazariy asosda ekanligimizni bilish biz uchun muhimdir. Bundan tashqari, nisbatan oddiy usullarni ehtiyotkorlik bilan qo'llash ko'plab algoritmlar haqida ko'p miqdorda batafsil ma'lumot beradi. Biz asosiy o'rinni oddiy analitik natijalar va tahlil usullariga beramiz, ayniqsa bu bizga fundamental algoritmlarning ichki mexanizmini tushunishda yordam berishi mumkin.
Tahlil algoritmlarni ishlab chiqish va amalga oshirish jarayonining har bir nuqtasida rol o'ynaydi. To'g'ri algoritmni tanlab, siz bajarish vaqtini qisqartirishingiz mumkin uch dan olti darajagacha. Ko'rib chiqilayotgan algoritmlar qanchalik samarali bo'lsa, ular orasidan tanlash vazifasi shunchalik qiyinlashadi, shuning uchun ularning xususiyatlarini batafsilroq o'rganish kerak. Eng yaxshi (aniq texnik ma'noda) algoritmni izlashda biz amaliy jihatdan foydali algoritmlarni ham, hal qilinishi kerak bo'lgan nazariy savollarni ham topamiz.
1 milliardgacha (toshib ketishni hisobga olmaganda) hisoblash uchun qancha vaqt ketadi? Dasturga qancha vaqt kerakligini aniqlang
int i , j , k , hisoblash = 0;
for ( i = 0; i < N; i ++)
for (j=0;jfor (k=0;k++ hisoblash ;
Do'stlaringiz bilan baham: |