VERİ YAPILARI

Ders Genel Bilgileri

Ders Kodu AKTS T+U+L Kredi Ders Türü
BLP19112 4 3+0 3 Zorunlu
Ders Linki (Türkçe) :
Ders Linki (İngilizce) :
Dersin Dili Türkçe
Dersin Düzeyi Ön Lisans
Öğretim Türü Örgün Öğretim
Dersin Türü Zorunlu
Dersin Amacı Veri Yapıları kavramlarının anlaşılmasını ve öğrenilmesini sağlamak ve bu kavramları problemlerin çözümünde doğru ve etkin bir şekilde kullanabilme yeteneğini kazandırmak.
Dersin İçeriği Veri Yapılarına Giriş, Özyineleme. Yığıt, Kuyruk ve Listeler. Ağaçlar. İkili Ağaçlar ve Dengeli Ağaçlar. Ağaçlar Üzerindeki İşlemler. Algoritmaların Karşılaştırılması.Zaman ve Yer Karmaşıklıkları. Sıralama ve Arama. Çizgeler.
Dersin Ön Koşulları -
Dersin Koordinatörü Doç. Dr. Selma BULUT
Dersi Verenler Doç. Dr. Selma BULUT
Dersin Yardımcıları -
Staj Durumu Yok

Dersin Kaynakları

Kaynaklar İlgili öğretim üyesinin önereceği kitap, ders notu, internet.
Notlar • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley, 2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C++”, Prentice Hall, 1995.
Döküman -
Ödev -

Ders Yapısı

Matematik ve Temel Bilimler% 20
Mühendislik Bilimleri% 50
Mühendislik Tasarımı% 30
Sosyal Bilimler% 0
Eğitim Bilimleri% 0
Fen Bilimleri% 0
Sağlık Bilimleri% 0
Alan Bilgisi% 0
Değerlendirme Ölçütleri
Yarı Yıl Çalışmaları Sayısı Katkı
Ara Sınav 1 % 40
Kısa Sınav 0 % 0
Ödev 3 % 0
Devam 0 % 0
Uygulama 0 % 0
Proje 0 % 0
Yarıyıl Sonu Sınavı 1 % 60
Arazi Çalışması 0 % 0
Atölye Çalışması 0 % 0
Laboratuvar 0 % 0
Sunum/Seminer Hazırlama 0 % 0
Toplam 5 % 100
AKTS Hesaplama İçeriği
Etkinlik Sayısı Süresi (Saat) Toplam İş Yükü
Ders Süresi 15 3 45
Sınıf Dışı Ç. Süresi 15 5 75
Ödevler 1 2 2
Ara Sınavlar 1 2 2
Yarıyıl Sonu Sınavı 1 2 2
Kısa Sınav 0 0 0
  126 | AKTS Kredisi : 4

Ders Konuları

Hafta Konu Öğretim Yöntem ve Teknikleri Döküman
1 Giriş ve Algoritma Analizi: Veri yapısı nedir? Bellek yönetimi (Stack vs Heap), Algoritma karmaşıklığına (Big O) giriş. Anlatım, Tartışma • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
2 Akış Şemaları ve C# Form Temelleri: Karmaşık algoritmaların akış şemasıyla gösterimi. Form bileşenlerinin veri yapıları için hazırlanması. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
3 Diziler ve Dinamik Diziler: Tek/Çok boyutlu diziler, List sınıfı kullanımı ve Form üzerinde listeleme. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
4 Bağlı Listeler (Linked Lists) - I: Tek yönlü bağlı liste mantığı ve akış şeması. Bellek adresi kavramı. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
5 Bağlı Listeler (Linked Lists) - II: Çift yönlü ve dairesel bağlı listeler. Form üzerinde ″Önceki-Sonraki″ butonları ile veri gezini uygulaması. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
6 Yığın (Stack) Yapısı: LIFO mantığı, Push/Pop işlemleri ve akış şeması. Form üzerinde ″Geri Al (Undo)″ mekanizması tasarımı. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
7 Kuyruk (Queue) Yapısı: FIFO mantığı, Enqueue/Dequeue işlemleri. Banka sırası veya yazıcı kuyruğu simülasyonu. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
8 Özyinelemeli (Recursive) Fonksiyonlar: Özyineleme mantığı ve akış şeması. Faktöriyel ve Fibonacci örneklerinin Form ekranında takibi. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
9 ARA SINAV - -
10 Ağaç (Tree) Yapıları - I: Temel kavramlar (Kök, Düğüm, Yaprak). İkili Ağaç (Binary Tree) yapısı ve akış şeması. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
11 Ağaç (Tree) Yapıları - II: Ağaç üzerinde dolaşım (Inorder, Preorder, Postorder). C# TreeView bileşeni ile dosya sistemi görselleştirme. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
12 Sıralama Algoritmaları (Sorting): Bubble, Selection ve Insertion Sort. Algoritmaların Form üzerinde adım adım (timer ile) görselleştirilmesi. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
13 Arama Algoritmaları (Searching): Doğrusal (Linear) ve İkili (Binary) arama. Performans karşılaştırmalarının Form üzerinde test edilmesi. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
14 Karma Tablolar (Hash Tables): Sözlük (Dictionary) yapısı, Key-Value mantığı ve hızlı veri erişimi. anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.
15 Konu tekrarı ve uygulamalr anlatım, uygulama, problem çözme • M. A. Weiss, Data Structures and Algorithm Analysis in C, 4/e, AddisonWesley,2006 • Rıfat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık, 2002 • M. Ü. Karakaş, “Veri Yapıları ve Algoritmalar”, Beta Basım Yayın, 2000. • Y. Langsam, M. J. Augenstein and A. S. Tanenbaum, “Data Structures Using C and C”, Prentice Hall, 1995.

Dersin Öğrenme Çıktıları: Bu dersin başarılı bir şekilde tamamlanmasıyla öğrenciler şunları yapabileceklerdir:

# Açıklama
1 Veri yapılarının ve algoritmalarının çalışma zamanı vebellek gereksinimleri analizini yapabilme yeteneği kazanılması
2 Problemlere farklı, etkin ve hızlı çözümler üretebilme
3 Bağlı listeler, yığın, kuyruk, ağaç ve çizge veri yapıları,ve bu veri yapılarının dizi ve işaretçi temelliprogramlamalarının öğrenilmesi
4 Yazılım geliştirirken gereken veri yapılarını etkin olaraktasarlayabilme
5 Programlama ortamlarındaki hazır veri yapılarını kullanabilme.
6 Veri yapılarının gerçek hayat problemlerinde uygulanabilmesiyeteneğinin kazanılması
7 Gerçek hayat problemlerini en etkin şekilde çözebilmekiçin hangi veri yapısı ve modelinin kullanılması gerektiğinekarar verebilme ve bu veri yapısını uygulayabilme
8 Bağımsız program yazabilme. Bu kapsamda proje hazırlayabilmeve rapor hazırlayarak yazılı olarak sunabilme.

Dersin Program Çıktılarına Katkısı

  P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16
Ö1 5551111101011330
Ö2 5352332102012230
Ö3 5553332102023430
Ö4 5553532112023430
Ö5 5553532112023430
Ö6 5553532114023430
Ö7 5553532114023430
Ö8 5553532114023430

Katkı Düzeyi: 0:Yok     1:Çok Düşük     2:Düşük     3:Orta     4:Yüksek     5:Çok Yüksek