|
|
İçerik
|
|
1. hafta: |
Algoritmaların karmaşıklık analizi |
2. hafta: |
Program tasarımında soyut veri türleri (ADT'ler): diziler, LIFO'lar, FiFO'lar, işaretçiler, bağlantılı listeler |
3. hafta: |
Referans türleri, fonksiyon argümanı olarak diziler, dizi işleme, fonksiyon çağrıları ve dönüşleri |
4. hafta: |
Yapılar ve iç içe geçmiş yapılar, ağaçlar, sıralı ikili ağaçlar, öncelik kuyrukları |
5. hafta: |
Sıralama Algoritmaları ve arama algoritmaları |
6. hafta: |
Yinelemeli ve özyinelemeli implementasyonlar |
7. hafta: |
Karatsuba, Toom–Cook, Strassen'in algoritmaları; gelişmiş sıralama ve arama algoritmaları |
8. hafta: |
Öklid algoritması, modüler çarpma yöntemleri, Montgomery algoritması |
9. hafta: |
Barrett algoritması, Ara sınav |
10. hafta: |
Matris determinantı ve ters çözüm hesaplamaları, dengeli aranan ağaçlar |
11. hafta: |
Modüler ters bulma algoritmaları |
12. hafta: |
Dinamik programlama |
13. hafta: |
Açgözlü teknik, Huffman kodlaması, Dijkstra algoritması |
14. hafta: |
Simpleks yöntemi |
15. hafta*: |
- |
16. hafta*: |
final sınavı |
Ders kitapları ve materyaller: |
Lecture notes, T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein., "Introduction to Algorithms", MIT Press, 2001. N. Karumanchi, "Data Structures And Algorithms Made Easy: Data Structures And Algorithmic Puzzles", CareerMonk Publications, 2023 |
Önerilen kaynaklar: |
Thomas, H. Coormen. "Algorithms Unlocked", The MIT Press, 2013 |
|
* 15. ve 16. haftalar arası final sınavına hazırlık haftası bulunmaktadır.
|
|