Lisans - Mühendislik Fakültesi - Bilgisayar Mühendisliği (İngilizce)
Y : Yıl D : Dönem
Ders Kodu Ders Adı Ders Türü Y D AKTS
CSE2025 Data Structures Zorunlu 2 3 8
Dersin Amacı
Bu dersin amacı, bilgisayar mühendisliği 2. sınıf öğrencilerine karmaşık veri tiplerini ve temel veri yapılarını ve sıralama-arama algoritmalarını aktarmak ve onların bu veri yapılarını çeşitli algoritmalarda doğru kullanmalarını sağlamaktır.
Öğrenme Çıktıları
1 verilen bir problemi çözmek için bu problemdeki girdi-çıktı ilişkisini tam olarak temsil eden, etkin, gerekli ve yeterli karmaşıklıkta veri yapıları oluşturmak ve bu yapılar üzerindeki ilgili işlemleri geliştirmek
2 veri yapıları üzerinde düğüm arama, ekleme,silme, güncelleme işlemlerinin anlaşılması ve gerçeklenmesi ve bu işlemlerin zaman/uzay karmaşıklıklarının çözümlenmesi
3 karesel ve O(nlogn) bellek içi sıralama algoritmalarını anlamak ve uygulamak
4 yığın, kuyruk, temel ve özel ağaçlar, kıyımlı adresleme (hash addressing), bellek yığınları (heaps) veya öncelikli kuyruklar, çizgeler gibi veri yapılarını tasarlamak ve gerçekleştirmek
5 durağan ve devingen veri yapılarını anlatmak
6 algoritmaların gereksindikleri koşma zamanı ve bellek alanı için sonuşurda (asymptotic) çözümleme yapmak
7 temel veri yapılarını ifade etmek
8 fiziksel verinin soyutlaştırılmasını gerçekleştirmek
9 karmaşık veri türleri oluşturmak
Öğrenim Türü
Örgün Öğretim
Dersin İçeriği
Giriş ve yineleme (Amaçlar, Matematik araçları gözden geçirme ve durağan ve devingen veri yapıları) Temel algoritma çözümlemesi Özyineleme ve özyinelemeli eşitlik çözümleri Temel veri yapıları (Bağlı Listeler) Temel veri yapıları(Yığınlar) Temel ağaç yapıları (Genel ağaçlar, İkili ve d-dallı ağaçlar, ikili arama ağaçları) Özel ağaç yapıları (AVL, splay and B-ağaçları) Temel veri yapıları (Kuyruklar) Kıyımlı adresleme (Hashing) Bellek yığınları (heaps) Sıralama Yöntemleri (Seçmeli sıralama, Köpük ve eklemeli sıralama) Sıralama Yöntemleri (Kaynaştırmalı sıralama, Hızlı sıralama ve yığmalı sıralama) (Mergesort, Quicksort and Heapsort) Çizge Algoritmaları (Çizgeler, İlingeli sıralama (Topological Sort), Enine ve derinlemesine arama) Çizge Algoritmaları (Tek Kaynaklı En Kısa Yol problemi, En küçük kapsayan ağaç (Minimum Spanning Trees))
Haftalık Ayrıntılı Ders İçeriği
Hafta Teorik Uygulama Laboratuvar
1 Giriş ve yineleme (Amaçlar, Matematik araçları gözden geçirme ve durağan ve devingen veri yapıları)
2 Temel algoritma çözümlemesi
3 özyineleme ve özyinelemeli eşitlik çözümleri
4 Temel veri yapıları (Bağlı Listeler)
5 Temel veri yapıları (Yığınlar)
6 Temel ağaç yapıları (Genel ağaçlar, İkili ve d-dallı ağaçlar, ikili arama ağaçları)
7 Özel ağaç yapıları (AVL, splay and B-ağaçları)
8 Ara dönem sınavı
9 Temel veri yapıları (Kuyruklar)
10 Kıyımlı adresleme (hashing)
11 Bellek yığınları (heaps)
12 Sıralama Yöntemleri (Seçmeli sıralama, Köpük ve eklemeli sıralama)
13 Sıralama Yöntemleri (Kaynaştırmalı sıralama, Hızlı sıralama ve yığmalı sıralama) (Mergesort, Quicksort and Heapsort)
14 Çizge Algoritmaları (Çizgeler, İlingeli sıralama (Topological Sort), Enine ve derinlemesine arama)
15 Çizge Algoritmaları (Tek Kaynaklı En Kısa Yol problemi, En küçük kapsayan ağaç (Minimum Spanning Trees))
16 Final hazırlık
17 Final
Ders Kitabı / Malzemesi / Önerilen Kaynaklar
Mark Allen Weiss, Data Structures & Algorithms Analysis in C 2nd edition, Addison-Wesley Publishing Company, 1999 Thomas H. Cormen, Charles E. Leiserson, Ronald L. Livest and Clifford Stein, Introduction to Algorithms, 2nd edition, MIT Press, 2003
Planlanan Öğrenme Aktiviteleri ve Metodları
Ara dönem ve dönem sonu sınavları, üç veya dört iki haftalık projeler, anlık sınavlar sıkça kullanılan öğrenme etkinlikleridir. Ders notları, yansı ve tahta kullanılarak öğrenciyle paylaşılmakta ve öğrencinin etkin olarak derse katılması sağlanmağa çalışılmaktadır.
Değerlendirme
DeğerlendirmeAdetDeğer
Yarıyıl (Yıl) İçi Etkinlikleri60
Yarıyıl (Yıl) Sonu Etkinlikleri40
Toplam100
Yarıyıl (Yıl) İçi EtkinlikleriAdetDeğer
Ara Sınav120
Quiz410
Proje470
Toplam100
Yarıyıl(Yıl) Sonu EtkinliklerAdetDeğer
Final Sınavı1100
Toplam100
Dersin Sunulduğu Dil
İngilizce
Staj Durumu
Yok
İş Yükü Hesaplaması
Etkinlikler Sayısı Süresi (saat) Toplam İş Yükü (saat)
Derse Katılım 14 3 42
Uygulama/Pratik 14 2 28
Ders Öncesi Bireysel Çalışma 14 1 14
Ders Sonrası Bireysel Çalışma 14 2 28
Uygulama/Pratik Sonrası Bireysel Çalışma 14 1 14
Ara Sınav Hazırlık 1 10 10
Final Sınavına Hazırlanma 1 10 10
Quiz Hazırlığı 4 4 16
Proje 4 13 52
Toplam 80 46 214
Program ve Öğrenme Çıktıları İlişkisi
PÇ 1PÇ 2PÇ 3PÇ 4PÇ 5PÇ 6PÇ 7PÇ 8PÇ 9PÇ 10PÇ 11PÇ 12PÇ 13PÇ 14PÇ 15PÇ 16
ÖÇ 10000000000000000
ÖÇ 20000000000000000
ÖÇ 30000000000000000
ÖÇ 40000000000000000
ÖÇ 50000000000000000

^