Fənn · İnformasiya təhlükəsizliyi
Alqoritmlər və verilənlər strukturlarıMövzu planı
Mövzu planı
Fənn üzrə mövzular və hər mövzunun təlim nəticələri.
1. Alqoritmlərə və verilənlər strukturlarına giriş. Alqoritmik həll olunmayan məsələlər
MühazirəMövzu çərçivəsində alqoritmlərin əsas xüsusiyyətləri və verilənlər strukturlarının əsas növləri öyrənilir. Alqoritmlərlə verilənlər strukturları arasındakı əlaqə və uyğun verilənlər strukturunun seçilməsinin alqoritmin səmərəliliyinə təsiri nəzərdən keçirilir. Alqoritmik həll olunmayan məsələlər anlayışı və bütün hesablama problemlərinin alqoritmik üsullarla həll edilməsinin mümkün olmaması məsələsi izah edilir. Həmçinin rekursiya anlayışı, rekursiv çağırışların iş prinsipi və müxtəlif problemlərin həllində tətbiqi araşdırılır. Rekursiv alqoritmlərin qurulması və uyğun həll nümunələri vasitəsilə onların işləmə məntiqi təhlil edilir.
2. Verilənlər strukturları
MühazirəMövzu çərçivəsində verilənlərin yaddaşda təşkili, saxlanılması və emalı üçün istifadə olunan əsas verilənlər strukturları öyrənilir. Massivlərin və siyahıların quruluşu, elementlərə müraciət, əlavə etmə, silmə və axtarış əməliyyatlarının əsas xüsusiyyətləri nəzərdən keçirilir. Stack və növbə strukturlarının işləmə prinsipləri, müvafiq olaraq LIFO və FIFO yanaşmaları və əsas tətbiq sahələri izah edilir. Həmçinin əlaqəli siyahıların quruluşu, düyün və əlaqə anlayışları, birtərəfli və ikitərəfli əlaqəli siyahıların əsas xüsusiyyətləri və digər verilənlər strukturlarından fərqləri araşdırılır.
3. Alqoritmlərdə optimallaşdırma və paralelləşdirmə
MühazirəMövzu çərçivəsində alqoritmlərin səmərəliliyinin qiymətləndirilməsi, optimallaşdırılması və paralel icrası prinsipləri öyrənilir. Alqoritmlərin zaman və məkan mürəkkəbliyinin təhlili, giriş verilənlərinin ölçüsündən asılı olaraq hesablama resurslarına tələbatın qiymətləndirilməsi məsələləri nəzərdən keçirilir. Big O, Omega və Theta işarələmələri vasitəsilə alqoritmlərin asimptotik davranışının təhlili izah edilir. Paralel alqoritmlərin hazırlanması, hesablamaların paralel tapşırıqlara bölünməsi və əsas paralel işləmə modelləri araşdırılır. Həmçinin böyük həcmli verilənlərin paylanmış şəkildə emalı üçün MapReduce yanaşması və paralel hesablama mühitlərində istifadə olunan verilənlər strukturlarının əsas xüsusiyyətləri nəzərdən keçirilir.
4. Alqoritmlərin qurulmasına yanaşmalar
MühazirəMövzu çərçivəsində müxtəlif problemlərin həlli üçün alqoritmlərin qurulmasında istifadə olunan əsas yanaşmalar öyrənilir. Mürəkkəb məsələlərin daha kiçik alt məsələlərə bölünərək həll edilməsinə əsaslanan böl və idarə et yanaşması nəzərdən keçirilir. Hər mərhələdə cari vəziyyət üçün ən uyğun seçimin edilməsinə əsaslanan acgöz yanaşmanın iş prinsipi və tətbiq xüsusiyyətləri izah edilir. Təkrarlanan alt məsələlərin nəticələrinin saxlanılması və yenidən istifadə edilməsinə əsaslanan dinamik proqramlaşdırma yanaşması araşdırılır. Həmçinin mümkün həll variantlarının sistemli şəkildə yoxlanılması və uyğun olmayan seçimlərdən geri qayıdılması prinsipinə əsaslanan geriyə qayıtma yanaşması nəzərdən keçirilir.
5. Sıralama və axtarış alqoritmləri
MühazirəMövzu çərçivəsində verilənlərin axtarılması və müəyyən ardıcıllıqla təşkil edilməsi üçün istifadə olunan əsas alqoritmlər öyrənilir. Xətti və binar axtarış alqoritmlərinin işləmə prinsipləri, tətbiq şərtləri və səmərəliliyi nəzərdən keçirilir. Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort və Heap Sort kimi əsas sıralama alqoritmlərinin iş məntiqi və xüsusiyyətləri izah edilir. Heapsort və TimSort yanaşmalarında istifadə olunan optimallaşdırma prinsipləri araşdırılır. Müxtəlif sıralama və axtarış alqoritmləri zaman və məkan mürəkkəbliyi, sabitlik, verilənlərin həcmi və strukturu baxımından müqayisəli şəkildə təhlil edilir. Həmçinin axtarış ağaclarının səmərəliliyinin artırılması və axtarış əməliyyatlarının optimallaşdırılması prinsipləri nəzərdən keçirilir.
6. Acgöz alqoritmlər. Dinamik proqramlaşdırma
MühazirəAcgöz (Greedy) alqoritmlərin əsas prinsipləri, lokal optimal seçimin edilməsi və bu seçimin qlobal optimal həllə gətirib çıxarması şərtləri araşdırılır. Minimum örtü, interval seçimi, kəsrli bel çantası və digər optimallaşdırma məsələlərinin həllində acgöz yanaşmanın tətbiqi öyrənilir.Dinamik proqramlaşdırmanın əsas prinsipləri, alt məsələlərə bölmə, təkrarlanan alt məsələlərin müəyyənləşdirilməsi və optimal altstruktur xüsusiyyəti araşdırılır. Memoizasiya və cədvəlləşdirmə (tabulation) yanaşmaları və onların optimallaşdırma məsələlərində tətbiqi öyrənilir.
Mövzu təlim nəticələri
- • CLO1: Explains the key characteristics of the main periods of Azerbaijani history.
- • CLO3: Develops an objective position on relevant historical issues.
- • CLO2: Clarifies selected controversial issues in Azerbaijani history.
- • CLO4: Demonstrates the required basic knowledge and formulates independent views on course topics.
- • CLO5:Relates Azerbaijan's ancient history to the modern era.
7. Qraf alqoritmləri. Ən qısa yolun tapılması alqoritmləri
MühazirəMövzu çərçivəsində qraf nəzəriyyəsinin əsas anlayışları və qraf strukturları üzərində istifadə olunan əsas alqoritmlər öyrənilir. Təpə, kənar, istiqamətlənmiş və istiqamətlənməmiş qraf, çəkili qraf və əlaqəlilik kimi əsas anlayışlar nəzərdən keçirilir. Qrafların dərinliyə axtarış (DFS) və eninə axtarış (BFS) üsulları ilə keçilməsi və bu alqoritmlərin tətbiq sahələri izah edilir. Qraf üzərində ən qısa yolun müəyyən edilməsi problemi, Deykstra və A* axtarış alqoritmlərinin işləmə prinsipləri və tətbiq xüsusiyyətləri araşdırılır. Həmçinin bütün təpə cütləri arasında ən qısa yolların hesablanması üçün Floyd–Warshall alqoritmi, eləcə də bu alqoritmin dinamik proqramlaşdırma ilə əlaqəli optimal altstruktur və üst-üstə düşən altməsələlər prinsipləri nəzərdən keçirilir.