Akademik Birim: |
Bilgisayar Mühendisliği Bölümü |
Öğrenim Türü: |
Örgün Eğitim |
Ön Koşullar |
CMPE 241 |
Öğrenim Dili: |
İngilizce |
Dersin Düzeyi: |
Lisans |
Dersin Koordinatörü: |
Doğan ÇÖRÜŞ |
Dersin Amacı: |
Bu dersin temel amacı öğrenciye problem çözmenin temelleri ile ilgili gerekli bilgiyi ve bilgisayar bilimleri ve hesapsal problemlerde yaygın olarak kullanılan ayrık veri yapılarının ve algoritmaların tasarım ve gerçekleştirimi becerisini kazandırmaktır. |
Dersin İçeriği: |
Veri yapıları ve algoritmalara giriş. Asimtotik notasyon ve analiz araçlarına genel bir bakış. Özyineleme ve bilgisayar bilimlerinde problem çözüm uygulaması. Bağlı listeler, çift bağlı listeler, yığıtlar, kuyruklar gibi önemli soyut veri tiplerinin tasarım ve gereçekleştirimi. Verimli sıralama, arama algoritmalarının ve ikili arama ağaçları gibi ayrık arama yapılarının tasarımı ve gereçekleştirimi. |
Dersin Öğrenme Çıktıları (ÖÇ): |
- 1- doğruluk için algoritmaları veya bilgisayar kodunu analiz etmek
- 2- verimlilik açısından algoritmaları ve bilgisayar kodunu değerlendirmek
- 3- en önemli veri yapılarını öğrenmek
- 4- en önemli veri yapılarının nasıl uygulanacağını öğrenmek
- 5- sorunları çözmek için veri yapılarının nasıl kullanılacağını öğrenmek
- 6- bazı gelişmiş algoritmaları öğrenmek
- 7- problem çözme becerilerini geliştirmek
- 8- kaba kuvvet yaklaşımını kullanmadan sorunları nasıl çözeceğinizi öğrenmek
- 9- bir kodlama görüşmesi için (neredeyse) hazır olmak
|
Dersin Öğrenme Yöntem ve Teknikleri |
Sınıfta ders anlatımı ardından bilgisayar laboratuarında uygulama. |
Hafta | Konular | Ön Hazırlık |
ÖÇ |
1 |
Giriş, Soyut Veri Tipleri |
Goodrich-Tamassia Bölüm 1, 2 |
1 |
2 |
Hesaplamalı Karmaşıklık Analizi |
Goodrich-Tamassia Bölüm 4 Skiena Bölüm 2.1, 2.2, 2.3, 2.4, 2.6, 2.7, 5.1 |
2, 4, 5, 6 |
3 |
Statik ve Dinamik Diziler, STL |
Goodrich-Tamassia Bölüm 3.1, 6.1, 6.2 Skiena Bölüm 3.1.1 |
2, 4, 5, 6 |
4 |
Özyineleme |
Goodrich-Tamassia Bölüm 3.5 |
1, 3, 4, 5 |
5 |
Bağlantılı Listeler |
Goodrich-Tamassia Bölüm 3.2, 3.3 Skiena Bölüm 3.1 |
1, 2, 3, 6 |
6 |
Yığınlar, Kuyruklar |
Goodrich-Tamassia Bölüm 5.1, 5.2 Skiena Bölüm 3.2 |
1, 2, 3, 6 |
7 |
Proje 1 |
|
1, 2, 3, 6 |
8 |
Grafikler, Ağaçlar, İkili Ağaçlar, Çapraz Ağaçlar (1) |
Goodrich-Tamassia Bölüm 13.1, 13.2, 13.3, 7 Skiena Bölüm 7 |
1, 2, 3, 6 |
9 |
Grafikler, Ağaçlar, İkili Ağaçlar, Çapraz Ağaçlar (2) |
Goodrich-Tamassia Bölüm 10.1 Skiena Bölüm 3.4 |
1, 2, 3, 6 |
10 |
Öncelikli Kuyruklar ve Yığınlar |
Goodrich-Tamassia Bölüm 8 Skiena Bölüm 3.5 |
1, 2 |
11 |
Hash Tabloları |
Goodrich-Tamassia Bölüm 9 Skiena Bölüm 3.7 |
1, 2 |
12 |
Sıralama Algoritmaları |
Goodrich-Tamassia Bölüm 11.1, 11.2 Skiena Bölüm 4 |
1, 2, 3, 4 |
13 |
Son Ek Dizileri ve LCP Dizileri (Geçici) |
|
1, 3, 6, 4 |
14 |
Final sınavı için En İyi Uygulamalar ve Özet |
|
1, 6, 4, 5 |
Kadir Has Üniversitesi'nde bir dönem 14 haftadır, 15. ve 16. hafta sınav haftalarıdır.