Ders Adı | Kodu | Yerel Kredi | AKTS | Ders (saat/hafta) | Uygulama (saat/hafta) | Laboratuar (saat/hafta) |
---|---|---|---|---|---|---|
Veri Yapıları ve Algoritmalar | YZM2031 | 4 | 6 | 3 | 0 | 2 |
Önkoşullar | Yok |
---|
Yarıyıl | Güz |
---|
Dersin Dili | İngilizce |
---|---|
Dersin Seviyesi | Lisans |
Dersin Türü | Zorunlu @ Yapay Zeka ve Veri Mühendisliği Lisans Programı (%100 İngilizce) |
Ders Kategorisi | Temel Meslek Dersleri |
Dersin Veriliş Şekli | Yüz yüze |
Dersi Sunan Akademik Birim | Yapay Zeka ve Veri Mühendisliği Bölümü |
---|---|
Dersin Koordinatörü | Ekrem Çetinkaya |
Dersi Veren(ler) | Ekrem Çetinkaya |
Asistan(lar)ı |
Dersin Amacı | Bu ders, öğrencilere temel veri yapılarını ve algoritmaları öğretmeyi, problem çözme becerilerini geliştirmeyi ve algoritmik düşünme yetisini kazandırmayı amaçlar. Öğrenciler farklı veri yapılarının avantaj ve dezavantajlarını anlayarak, problem türlerine göre en uygun çözümleri geliştirebilecek becerilere sahip olacaklardır. |
---|---|
Dersin İçeriği | Algoritma analizi ve karmaşıklık teorisi, temel veri yapıları (array, linked list, stack, queue), tree yapıları (binary tree, binary search tree, AVL tree, heap), hash table, graph yapıları ve algoritmaları, sorting algoritmaları, searching algoritmaları, greedy algoritmalar ve temel string algoritmaları. |
Ders Kitabı / Malzemesi / Önerilen Kaynaklar |
|
Opsiyonel Program Bileşenleri | Yok |
Ders Öğrenim Çıktıları
- Algoritmaların zaman ve uzay karmaşıklığını analiz eder ve Big-O notasyonunu kullanır.
- Temel veri yapılarını (array, linked list, stack, queue) implement eder ve uygun senaryolarda kullanır
- Tree yapıları ve hash table ile verimli arama ve ekleme işlemleri gerçekleştirir
- Graph algoritmaları ile yol bulma ve gezinme problemlerini çözer
- Farklı sorting ve searching algoritmalarını karşılaştırır ve problem türüne uygun olanı seçer
- Algoritmik problem çözme becerilerini geliştirerek kompleks problemleri parçalara ayırır
Ders Öğrenim Çıktısı & Program Çıktısı Matrisi
DÖÇ-1 | DÖÇ-2 | DÖÇ-3 | DÖÇ-4 | DÖÇ-5 | DÖÇ-6 |
Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları
Hafta | Konular | Ön Hazırlık |
---|---|---|
1 | C++ Programlama Temelleri ve Sınıflar | Weiss Ch.1 |
2 | Listeler ve Linked List | Weiss Ch.3.1-3.5 |
3 | Stack ve Queue | Weiss Ch.3.6-3.7 |
4 | Queue ve Chars/Strings | Weiss Ch.3.7 |
5 | Algoritma Analizi | Weiss Ch.2 |
6 | Ağaçlar | Weiss Ch.4.1-4.2 |
7 | Binary Search Tree | Weiss Ch.4.3 |
8 | Ara Sınav 1 | |
9 | Balanced Tree (AVL) | Weiss Ch.4.4 |
10 | Heap Veri Yapısı | Weiss Ch.6 |
11 | Sıralama Algoritmaları | Weiss Ch.7 |
12 | Disjoint Sets | Weiss Ch.8 |
13 | Hash Tabloları | Weiss Ch.5 |
14 | Graph Veri Yapıları | Weiss Ch.9 |
15 | Algoritma Tasarım Teknikleri | Weiss Ch.10 |
16 | Final |
Değerlendirme Sistemi
Etkinlikler | Sayı | Katkı Payı |
---|---|---|
Devam/Katılım | ||
Laboratuar | 7 | 30 |
Uygulama | ||
Arazi Çalışması | ||
Derse Özgü Staj | ||
Küçük Sınavlar/Stüdyo Kritiği | ||
Ödev | ||
Sunum/Jüri | ||
Projeler | ||
Seminer/Workshop | ||
Ara Sınavlar | 1 | 30 |
Final | 1 | 40 |
Dönem İçi Çalışmaların Başarı Notuna Katkısı | ||
Final Sınavının Başarı Notuna Katkısı | ||
TOPLAM | 100 |
AKTS İşyükü Tablosu
Etkinlikler | Sayı | Süresi (Saat) | Toplam İşyükü |
---|---|---|---|
Ders Saati | 14 | 3 | |
Laboratuar | 14 | 2 | |
Uygulama | |||
Arazi Çalışması | |||
Sınıf Dışı Ders Çalışması | 7 | 3 | |
Derse Özgü Staj | |||
Ödev | |||
Küçük Sınavlar/Stüdyo Kritiği | |||
Projeler | |||
Sunum / Seminer | |||
Ara Sınavlar (Sınav Süresi + Sınav Hazırlık Süresi) | 1 | 20 | |
Final (Sınav Süresi + Sınav Hazırlık Süresi) | 1 | 25 | |
Toplam İşyükü : | |||
Toplam İşyükü / 30(s) : | |||
AKTS Kredisi : |
Diğer Notlar | Yok |
---|