Ders Adı Veri Yapıları
Ders Kodu BPR-3124
Dersin Türü Zorunlu
Ders Biriminin Seviyesi Ön Lisans
Yıl 1
Dönem 2.Yarıyıl
AKTS 3
Dersi Veren(ler) Öğr. Gör. Dr. Enes AÇIKGÖZOĞLU
Dersin Yardımcıları
Ders İşleme Biçimi Yüz Yüze
Önkoşul Dersleri
Dersin İçeriği Veri yapıları dersinde ilk olarak temel veri tipleri ve bileşik veri tipleri ele alınır. Ardından, veri yapılarına genel bir bakış yapılarak, veri yapılarının kullanım amaçları ve algoritmalarla olan ilişkileri anlatılır. Tek bağlı doğrusal listeler, tek bağlı dairesel listeler, çift bağlı doğrusal listeler ve çift bağlı dairesel listeler gibi farklı liste türlerinin nasıl çalıştığı ve bu yapıların üzerinde gerçekleştirilen temel ve ileri düzey işlemler detaylandırılır. Yığınlar (stack) ve kuyruklar (queue) gibi doğrusal veri yapıları incelenir, bu yapıların LIFO (Last In First Out) ve FIFO (First In First Out) prensiplerine göre nasıl işlediği açıklanır. Ayrıca, kaba arama algoritması (linear search) ve hızlı arama algoritması (binary search) gibi arama algoritmalarının nasıl çalıştığı, her birinin performans analizleri ile birlikte öğretilir. Bu ders, veri yapılarını anlamanızı ve algoritmalarla birlikte etkili bir şekilde kullanmanızı sağlamayı hedefler.
Dersin Verildiği Diller Türkçe
Dersin Amacı Veri yapıları dersi, öğrencilere farklı veri yapılarını anlamalarını ve bu yapıları etkin bir şekilde kullanabilmelerini sağlamayı amaçlamaktadır. Öğrenciler, veri yapılarını seçme, uygulama ve algoritmalarla birlikte çözümleme becerisi kazanacaklardır. Bu dersin sonunda öğrenciler, veri yapılarını optimize ederek, verimli yazılımlar geliştirebileceklerdir. Hedefler: Farklı veri yapıları hakkında bilgi sahibi olmak ve her birinin avantajlarını öğrenmek. Veri yapılarının temel kavramlarını anlamak ve pratikte uygulamak. Algoritmalarla veri yapılarını kullanarak problemlere çözümler geliştirmek. Veri yapılarının karmaşıklığını analiz edebilmek ve zaman/mekân verimliliğini değerlendirmek. Veri yapılarının günlük yazılım projelerinde nasıl kullanıldığını öğrenmek.
Ders Yapısı
Temel/Alana Özgü Mesleki Dersler 80
Uzmanlık/Program Dersi 0
Destek Dersi 0
Beceri,İletişim ve Yönetim Becerileri Dersi 0
Aktarılabilir Beceri Dersi 0
Matematik ve Temel Bilimler 0
Temel Eğitim 20
Ders İşleme Şekli
Sınıf Dersi 100
Sınıf Dersi açıklama 1
Problem Saati 0
Problem Saati Açıklama 0
Laboratuvar 0
Laboratuvar Açıklama 0
Diğer 0
Diğer Açıklama 0
No Dersin Kazanımları  
1 Temel veri tiplerini açıklar ve veri yapılarının bellek üzerindeki etkilerini değerlendirir.
2 Farklı veri yapısı türlerini (bağlı listeler, yığınlar, kuyruklar) sınıflandırır ve uygun kullanım alanlarını açıklar.
3 Tek bağlı, çift bağlı ve dairesel bağlı liste türlerini uygular ve aralarındaki farkları analiz eder.
4 Yığın ve kuyruk veri yapılarının temel işlemlerini gerçekleştirir ve uygulamalarda kullanır.
5 Kabarcık ve hızlı arama algoritmalarını açıklar ve veri üzerinde uygular.
6 Verilen bir problem için en uygun veri yapısını seçer ve seçimini gerekçelendirir.
DERSİN KAZANIMLARI / PROGRAM YETERLİKLERİ İLİŞKİ MATRİSİ
DKPÇ1PÇ2PÇ3PÇ4PÇ5PÇ6PÇ7PÇ8PÇ9PÇ10PÇ11PÇ12PÇ13PÇ14PÇ15PÇ16
1
2
3
4
5
6
5-Çok Yüksek İlişkili 4- Yüksek İlişkili 3-Orta İlişkili 2- Zayıf İlişkili 1-İlişkisiz
Hafta Konular  
1 Veri Tipleri
2 Veri Yapıları Genel Bakış
3 Tek Bağlı Doğrusal Listeler
4 Tek Bağlı Doğrusal Listeler (Devam)
5 Tek Bağlı Dairesel Listeler
6 Tek Bağlı Dairesel Listeler (Devam)
7 Çift Bağlı Doğrusal Listeler
8 Çift Bağlı Doğrusal Listeler (Devam)
9 Çift Bağlı Dairesel Listeler
10 Çift Bağlı Dairesel Listeler (Devam)
11 Yığınlar (stacks)
12 Kuyruklar (quaues)
13 Kabarcık Arama Algoritması
14 Hızlı Arama Algoritması
No Program Çıktısı Katkı Düzeyi
1 Mesleği ile ilgili temel, güncel ve uygulamalı bilgilere sahip olur. 4
2 İş sağlığı ve güvenliği, çevre bilinci ve kalite süreçleri hakkında bilgi sahibi olur. 4
3 Mesleği için güncel gelişmeleri ve uygulamaları takip eder, etkin şekilde kullanır. 4
4 Mesleği ile ilgili bilişim teknolojilerini (yazılım, program, animasyon vb.) etkin kullanır. 4
5 Mesleki problemleri ve konuları bağımsız olarak analitik ve eleştirel bir yaklaşımla değerlendirme ve çözüm önerisini sunabilme becerisine sahiptir. 4
6 Bilgi ve beceriler düzeyinde düşüncelerini yazılı ve sözlü iletişim yolu ile etkin biçimde sunabilir, anlaşılır biçimde ifade eder. 1
7 Alanı ile ilgili uygulamalarda karşılaşılan ve öngörülemeyen karmaşık sorunları çözmek için ekip üyesi olarak sorumluluk alır. 1
8 Kariyer yönetimi ve yaşam boyu öğrenme konularında farkındalığa sahiptir. 1
9 Alanı ile ilgili verilerin toplanması, uygulanması ve sonuçlarının duyurulması aşamalarında toplumsal, bilimsel, kültürel ve etik değerlere sahiptir. 1
10 Bir yabancı dili kullanarak alanındaki bilgileri takip eder ve meslektaşları ile iletişim kurar. 1
11 Algoritma ve veri yapılarını oluşturur ve matematiksel hesapları yapar. 1
12 Web programlama teknolojilerini açıklar ve uygular. 1
13 Veri tabanı tasarımı ve yönetimini gerçekleştirir. 1
14 Yazılımları test eder ve hataları giderir. 1
15 İş yeri ortamında teorik bilgilerini pratiğe aktarma, iş hayatının dinamiklerini anlama ve mesleki sorumluluklarını geliştirme becerilerine sahip olur 1
16 Atatürk İlkeleri ve İnkılap Tarihi, Türk Dili ve İngilizce gibi zorunlu dersler aracılığıyla, tarihi, kültürel, dilsel ve evrensel değerlere dair farkındalık kazanır, eleştirel düşünme ve küresel ölçekte etkileşim becerilerine sahip olur. 1
Yarıyıl İçi Çalışmaları Sayısı Katkı Payı
Ara Sınav 1 100
Kısa Sınav 0 0
Ödev 0 0
Devam 0 0
Uygulama 0 0
Labaratuvar 0 0
Proje 0 0
Atölye 0 0
Seminer 0 0
Arazi Çalışması 0 0
Sözlü sınav 0 0
Portfolyo 0 0
Doküman İncelemesi 0 0
Performans değerlendirme 0 0
Sunum 0 0
Alan Çalışması 0 0
Vaka Çalışması 0 0
Video Kaydı 0 0
Öz değerlendirme 0 0
Akran Değerlendirme 0 0
Eşleştirme Testleri 0 0
Çoktan seçmeli test 0 0
Kısa Cevaplı test 0 0
Kontrol listeleri 0 0
Dereceleme Ölçekleri 0 0
Zihin Haritalama 0 0
Araştırma yazısı 0 0
Çevrimiçi anket 0 0
Çevrimiçi Kısa sınav 0 0
TOPLAM 100
Yıliçinin Başarıya Oranı 40
Finalin Başarıya Oranı 60
TOPLAM 100
AKTS kredilerinin belirlenmesinde öğrenci işyükü anketlerinden faydalanılmaktadır.
Etkinlik Sayısı Süresi Toplam
Ders Süresi (Sınav Haftaları Hariç) 14 3 42
Sınıf Dışı Ders Çalışma Süresi 14 3 42
Ödevler 0 0 0
Sunum/Seminer 0 0 0
Proje 0 0 0
Laboratuar Çalışması 0 0 0
Arazi ya da Alan Çalışması 0 0 0
Kısa Sınav 0 0 0
Araştırma 0 0 0
Rapor Yazma/Rapor sunumu 0 0 0
Vaka İncelemesi 0 0 0
Staj 0 0 0
Uygulama/Materyal Hazırlama 0 0 0
Tez Çalışması 0 0 0
Ara Sınavlar 1 1 1
Yarıyıl Sonu Sınavı 1 1 1
İşyükü Saati (30) 0
Toplam İşyükü / Saat 86    
Dersin Akts Kredisi 3    
Ders Notu Obs Ders Dokümanları
Diğer Kaynaklar Obs Ders Dokümanları
Materyal
Dökümanlar Obs Ders Dokümanları
Ödevler
Sınavlar
Materyal Diğer
Planlanmış Öğrenme Faaliyetleri ve Öğretim Yöntemleri











Haftalık Ders İzlencesi
Hafta 1 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Temel veri tipleri: integer, float, character, boolean
Bileşik veri tipleri: array, struct
Hedefler:
Temel veri tiplerinin tanımını öğrenmek
Bileşik veri tiplerinin kullanımını anlamak

Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 2 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Veri yapılarının tanımı
Veri yapıları ile algoritmaların ilişkisi
Hedefler:
Veri yapılarının çeşitlerini öğrenmek
Veri yapıları ile algoritmalar arasındaki ilişkiyi anlamak
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar Scope:

Definition of data structures
The relationship between data structures and algorithms
Goals:
Learn the different types of data structures
Understand the relationship between data structures and algorithms
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 3 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Tek bağlı doğrusal liste yapısı
Düğüm yapısı ve temel işlemler (ekleme, silme, arama)
Hedefler:
Tek bağlı doğrusal liste yapısını anlamak
Temel işlemleri gerçekleştirebilmek (ekleme, silme, arama)
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 4 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Listeyi tersine çevirme
İki listeyi birleştirme
Döngü tespiti
Hedefler:
Listeyi tersine çevirebilmek
İki listeyi birleştirebilmek
Döngü tespiti yapabilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 5 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Tek bağlı dairesel liste yapısı
Dairesel liste üzerinde temel işlemler
Hedefler:
Tek bağlı dairesel liste yapısını anlamak
Dairesel listelerde temel işlemleri gerçekleştirebilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 6 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Dairesel listelerde ileri seviye işlemler
Döngü tespiti ve listeyi birleştirme
Hedefler:
Dairesel listelerde ileri seviye işlemleri öğrenmek
Listeyi birleştirebilmek ve döngü tespiti yapabilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 7 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Çift bağlı doğrusal liste yapısı
Düğüm yapısı ve iki yönlü gezinme
Hedefler:
Çift bağlı doğrusal liste yapısını anlamak
İki yönlü gezinme işlemlerini öğrenmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 8 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Listeyi tersine çevirme
İki listeyi birleştirme
Hedefler:
Çift bağlı doğrusal listelerde ileri seviye işlemleri öğrenmek
Listeyi tersine çevirebilmek ve iki listeyi birleştirebilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 9 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Çift bağlı dairesel liste yapısı
Düğüm yapısı ve iki yönlü gezinme
Hedefler:
Çift bağlı dairesel liste yapısını anlamak
Çift yönlü gezinebilmeyi öğrenmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 10 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Çift bağlı dairesel listelerde ileri seviye işlemler
Döngü tespiti ve listeyi tersine çevirme
Hedefler:
Çift bağlı dairesel listelerde ileri seviye işlemleri öğrenmek
Döngü tespiti ve listeyi tersine çevirmeyi öğrenmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 11 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Yığın veri yapısının tanımı
LIFO prensibi ve temel işlemler (push, pop, peek)
Hedefler:
Yığın veri yapısının mantığını öğrenmek
Push, pop ve peek gibi temel işlemleri gerçekleştirebilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 12 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Kuyruk veri yapısının tanımı
FIFO prensibi ve temel işlemler (enqueue, dequeue)
Hedefler:
Kuyruk veri yapısının mantığını öğrenmek
Enqueue ve dequeue gibi temel işlemleri gerçekleştirebilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 13 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Kaba arama algoritması (linear search)
Algoritmanın çalışma prensibi ve performans analizi
Hedefler:
Kaba arama algoritmasını öğrenmek
Performans analizini yapabilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri
Hafta 14 .Hafta
Konu
Haftalık Kapsam ve Hedefler Kapsam:

Hızlı arama algoritması (binary search)
Algoritmanın çalışma prensibi ve performans analizi
Hedefler:
Hızlı arama algoritmasını öğrenmek
Performans analizini yaparak algoritmanın etkinliğini değerlendirebilmek
Haftalık Öğrenme Etkinlikleri/Kaynakları/Videolar
Haftalık Öğrenme Etkinlikleri Açıklama
Haftalık Ölçme-Değerlendirme Etkinlikleri Doküman İncelemesi, Sunum,
Haftalık Ölçme-Değerlendirme Notlandırması/Ödev Teslim Süreleri