| Dersin Kodu | Dersin Adı | Dersin Türü | Yıl | Yarıyıl | AKTS |
|---|---|---|---|---|---|
| SGM229 | DATA STRUCTURES AND ALGORITHMS | Seçmeli Ders Grubu | 2 | 3 | 5,00 |
Önlisans
İngilizce
Bu ders ile öğrencilerin temel algoritmaları, algoritma tasarım tekniklerini ve algoritmaların analizini kavramaları amaçlamaktadır. Ayrıca, teorik altyapı ve algoritmaların pratik uygulamaları aracılığıyla öğrenciler, problem çözme becerilerini geliştirecek, algoritmik verimliliği anlayacak ve algoritmaların gerçek dünya senaryolarındaki etkin uygulamalarına dair içgörüler kazanacaktır.
Öğr. Gör. Dr. Çağla Kambak İs
| 1 | Temel veri yapılarını, algoritma kavramlarını ve algoritma tasarım yaklaşımlarını açıklayabilme. |
| 2 | Bir probleme uygun veri yapısını ve algoritmik çözüm yaklaşımını seçebilme. |
| 3 | Algoritmaları doğruluk, zaman karmaşıklığı ve bellek kullanımı açısından karşılaştırabilme. |
| 4 | Arama, sıralama, çizge ve temel veri yapılarıyla ilgili algoritmaları C diliyle uygulayabilme. |
| 5 | Basit algoritma uygulamalarını farklı girdilerle test ederek sonuçları değerlendirebilme. |
Birinci Öğretim
Yoktur
Yoktur
Algoritmaların temelleri; algoritma tasarım teknikleri; çizgeler ve çizge algoritmaları; diziler ve bağlı listeler; kuyruklar ve yığınlar; ağaçlar; algoritmaların zaman ve bellek verimliliği; doğrusal ve ikili arama; temel sıralama algoritmaları; C diliyle algoritma ve veri yapısı uygulamaları.
| Hafta | Konular (Teorik) | Uygulama | Öğretim Yöntem ve Teknikleri | Ön Hazırlık |
|---|---|---|---|---|
| 1 | Algoritmanın Temelleri | Basit algoritmaların C dilinde uygulanması | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 1, s. 1-9; öğretim elemanı ders notları. |
| 2 | Algoritma Tasarım Teknikleri | if, while ve for yapılarıyla kısa örneklerin yazılması (OnlineGDB). | Anlatım, gösterip yaptırma, problem çözme | Bible ve Moser (2023), Bölüm 1, s. 4-19; öğretim elemanı ders notları |
| 3 | Çizgeler | Küçük bir çizgenin komşuluk matrisiyle gösterilmesi (OnlineGDB) | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 11, s. 297-303; öğretim elemanı ders notları |
| 4 | Çizge Algoritmaları I Anlatım, gösterip yaptırma, laboratuvar çalışması | Temel çizge algoritmalarının uygulanması (OnlineGDB). | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 11, s. 303-309; öğretim elemanı ders notları. |
| 5 | Çizge Algoritmaları II | Hazır DFS kodunun çalıştırılması ve ziyaret sırasının gözlenmesi (OnlineGDB). | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 11, s. 309-314; öğretim elemanı ders notları. |
| 6 | Temel Veri Yapıları: Diziler ve Bağlı Listeler | Dizide ekleme ve silme; bağlı listeye bir düğüm ekleme (OnlineGDB). Ödev-1 | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 5, s. 138-157; Bölüm 6, s. 166-170; öğretim elemanı ders notları |
| 7 | Temel Veri Yapıları: Kuyruklar ve Yığınlar | Yığın ve kuyrukta ekleme ve çıkarma işlemlerinin yapılması (OnlineGDB) | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 6, s. 158-170; öğretim elemanı ders notları |
| 8 | ARA SINAV | ARA SINAV | Yazılı Sınav | 1-7. hafta konuları ve belirtilen kaynaklar; öğretim elemanı ders notları. |
| 9 | Temel Veri Yapıları: Ağaçlar | Hazır ikili ağaç kodunda ön dolaşımın çalıştırılması (OnlineGDB) | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 8, s. 218-235; öğretim elemanı ders notları |
| 10 | Algoritmaların Verimlilik Analizi I | Tek döngülü bir kodun işlem sayısının bulunması (OnlineGDB) | Anlatım, gösterip yaptırma, problem çözme | Bible ve Moser (2023), Bölüm 1, s. 9-15; öğretim elemanı ders notları |
| 11 | Algoritmaların Verimlilik Analizi II | Tek ve iç içe döngülerin çalışma sonuçlarının karşılaştırılması (OnlineGDB) | Anlatım, gösterip yaptırma, problem çözme | Bible ve Moser (2023), Bölüm 1, s. 15-19; öğretim elemanı ders notları |
| 12 | Arama Algoritmaları | Arama algoritmalarının C dilinde uygulanması | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 4, s. 119-137; öğretim elemanı ders notları. |
| 13 | Sıralama Algoritmaları I | Sıralama algoritmalarının C dilinde uygulanması (OnlineGDB). Ödev-2 | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 3, s. 60-88; öğretim elemanı ders notları. |
| 14 | Sıralama Algoritmaları II | Sıralama algoritmalarının karşılaştırılması (OnlineGDB) | Anlatım, gösterip yaptırma, laboratuvar çalışması | Bible ve Moser (2023), Bölüm 3, s. 89-118; öğretim elemanı ders notları |
| 15 | Genel Algoritma Problemleri ve Genel Tekrar | Kısa C kodlarındaki basit hataların bulunup düzeltilmesi (OnlineGDB) | Anlatım, gösterip yaptırma, problem çözme | 1-14. haftalarda belirtilen kaynaklar; öğretim elemanı ders notları ve uygulama föyleri |
| 16 | Final Sınavı | Yazılı Sınav | Tüm konular ve belirtilen kaynaklar; öğretim elemanı ders notları. |
Dersin Kaynakları: Bible, P. W. & Moser, L. (2023). An Open Guide to Data Structures and Algorithms. PALNI Open Press. Önerilen Kaynaklar: Osmanoğlu, M., Tuğrul, B. & Ar, Y. (2023). Algoritmalar ve Programlama. Ankara Üniversitesi. Levitin, A. (2012). Introduction to the Design and Analysis of Algorithms (3rd ed.). Pearson. Önerilen Uygulamalar: OnlineGDB - C Online Compiler & Debugger.
Anlatım · Gösterip Yaptırma · Laboratuvar Çalışması · Problem Çözme
| Yarıyıl (Yıl) İçi Etkinlikleri | Adet | Değer |
|---|---|---|
| Ara Sınav | 1 | 50 |
| Ev Ödevi | 2 | 50 |
| Toplam | 100 | |
| Yarıyıl (Yıl) Sonu Etkinlikleri | Adet | Değer |
| Final Sınavı | 1 | 100 |
| Toplam | 100 | |
| Yarıyıl (Yıl) İçi Etkinlikleri | 40 | |
| Yarıyıl (Yıl) Sonu Etkinlikleri | 60 | |
Yoktur
| Etkinlikler | Sayısı | Süresi (saat) | Toplam İş Yükü (saat) |
|---|---|---|---|
| Ara Sınav | 1 | 2 | 2 |
| Final Sınavı | 1 | 2 | 2 |
| Derse Katılım | 14 | 3 | 42 |
| Uygulama/Pratik | 14 | 2 | 28 |
| Bireysel Çalışma | 14 | 3 | 42 |
| Ara Sınav İçin Bireysel Çalışma | 1 | 8 | 8 |
| Final Sınavı içiin Bireysel Çalışma | 1 | 16 | 16 |
| Ev Ödevi | 2 | 5 | 10 |
| Toplam İş Yükü (saat) | 150 | ||
| PÇ 1 | PÇ 2 | PÇ 3 | PÇ 4 | PÇ 5 | PÇ 6 | PÇ 7 | PÇ 8 | PÇ 9 | PÇ 10 | PÇ 11 | PÇ 12 | PÇ 13 | PÇ 14 | PÇ 15 | |
| ÖÇ 1 | 5 | 3 | |||||||||||||
| ÖÇ 2 | 4 | 4 | |||||||||||||
| ÖÇ 3 | 5 | 3 | |||||||||||||
| ÖÇ 4 | 5 | 3 | |||||||||||||
| ÖÇ 5 | 4 | 4 |