VERİ YAPILARI |
BLM213 |
3 |
3 |
1 |
5,0 |
Önkoşul(lar)-var ise |
|
Dersin Dili |
|
Dersin Türü |
Lisans |
Dersin sorumlusu(ları) |
Dr. Öğr. Üyesi MEHMET KARA |
Dersin Amacı |
Bu ders, öğrencilere temel veri yapıları ve algoritmalar konularında bilgi vermeyi amaçlar. |
Dersin Verilme Şekli |
Örgün |
Sıra No |
Dersin Öğrenme Çıktıları |
Öğretim Yöntemleri |
Değerlendirme Yöntemleri |
Program Yeterliliklerini Karşılama Düzeyi(1)(2)(3)(4)(5) |
1 |
Learn basic data structures. |
|
|
|
1 |
Temel veri yapılarını öğrenir. |
Anlatım, Gösterip Yaptırma |
Sınav |
1, 2, 3, 8, 9 |
2 |
Temel veri yapılarını ve birbirlerine göre avantaj ve dezavantajlarını tanır. |
Anlatım, Soru-cevap |
Sınav |
1, 2, 3, 4, 5, 8, 9 |
2 |
Understand the advantages and disadvantages of different data structures. |
|
|
|
3 |
Use recognized data structures effectively. |
|
|
|
3 |
Tanınan temel veri yapılarını etkin şekilde kullanır. |
Anlatım, Gösterip Yaptırma |
Sınav |
1, 2, 3, 4, 5, 6, 8, 9 |
4 |
Üretilen çözümlerin etkinliklerini ölçümler. |
Anlatım, Problem Çözme |
Sınav |
1, 2, 3, 5, 8, 9 |
4 |
Measure the efficiency of generated solutions. |
|
|
|
5 |
Use multiple data structures together. |
|
|
|
5 |
Birden fazla veri yapısını beraber kullanır. |
Anlatım, Soru-cevap, Gösterip Yaptırma |
Sınav |
1, 2, 3, 4, 5, 6, 8, 9 |
6 |
|
|
|
|
6 |
|
|
|
|
7 |
|
|
|
|
7 |
|
|
|
|
8 |
|
|
|
|
8 |
|
|
|
|
9 |
|
|
|
|
9 |
|
|
|
|
10 |
|
|
|
|
10 |
|
|
|
|
11 |
|
|
|
|
11 |
|
|
|
|
12 |
|
|
|
|
12 |
|
|
|
|
13 |
|
|
|
|
13 |
|
|
|
|
14 |
|
|
|
|
14 |
|
|
|
|
15 |
|
|
|
|
15 |
|
|
|
|
|
Dersin İçeriği |
Ders kapsamında; Veri Yapılarına Giriş Veri Soyutlama: Yapılar ve Sınıflar Vektör Kavramsal Veri Yapısı ve Gerçeklemeleri İteratörler Liste Kavramsal Veri Yapısı ve Gerçeklemeleri Yığın Kavramsal Veri Yapısı ve Gerçeklemeleri Kuyruk Kavramsal Veri Yapısı ve Gerçeklemeleri Ara Sınav Ağaç Kavramsal Veri Yapısı ve İkili Ağaçların Gerçeklenmesi İkili Ağaçlar Üzerinde Arama ve Sıralama Dengeli Ağaçlar: AVL Ağaçları, Kırmızı-Siyah Ağacı, B-Ağacı Küme Kavramsal Veri Yapısı ve Gerçeklemeleri Map Kavramsal Veri Yapısı ve Gerçeklemeleri Çizgelerin Tanımı ve Genel Çizge Yapılarının Gerçeklenmesi Temel Çizge Problemleri ve Çözüm Yöntemleri konuları işlenecektir. |
Kaynaklar |
1. Koffman, E., & Wolfgang, P. (2005). Objects, Abstraction, Data Structures and Design Using C++. Wiley.
2. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2001). Introduction to Algorithms. MIT Press. |
Haftalara Göre İşlenecek Konular |
Haftalar |
Konular |
Dokümanlar |
1 . Hafta |
Veri Yapılarına Giriş |
|
1 . Hafta |
Introduction to Data Structures |
|
2 . Hafta |
Data Abstraction: Structures and Classes |
|
2 . Hafta |
Veri Soyutlama: Yapılar ve Sınıflar |
|
3 . Hafta |
Vektör Kavramsal Veri Yapısı ve Gerçeklemeleri |
|
3 . Hafta |
Vector Abstract Data Type and Implementations |
|
4 . Hafta |
Iterators |
|
4 . Hafta |
İteratörler |
|
5 . Hafta |
Liste Kavramsal Veri Yapısı ve Gerçeklemeleri |
|
5 . Hafta |
List Abstract Data Type and Implementations |
|
6 . Hafta |
Stack Abstract Data Type and Implementations |
|
6 . Hafta |
Yığın Kavramsal Veri Yapısı ve Gerçeklemeleri |
|
7 . Hafta |
Kuyruk Kavramsal Veri Yapısı ve Gerçeklemeleri |
|
7 . Hafta |
Queue Abstract Data Type and Implementations |
|
8 . Hafta |
Midterm Exam |
|
8 . Hafta |
Ara Sınav |
|
9 . Hafta |
Ağaç Kavramsal Veri Yapısı ve İkili Ağaçların Gerçeklenmesi |
|
9 . Hafta |
Tree Abstract Data Type and Binary Tree Implementations |
|
10 . Hafta |
Searching and Sorting on Binary Trees |
|
10 . Hafta |
İkili Ağaçlar Üzerinde Arama ve Sıralama |
|
11 . Hafta |
Dengeli Ağaçlar: AVL Ağaçları, Kırmızı-Siyah Ağacı, B-Ağacı |
|
11 . Hafta |
Balanced Trees: AVL Trees, Red-Black Trees, B-Trees |
|
12 . Hafta |
Set Abstract Data Type and Implementations |
|
12 . Hafta |
Küme Kavramsal Veri Yapısı ve Gerçeklemeleri |
|
13 . Hafta |
Map Kavramsal Veri Yapısı ve Gerçeklemeleri |
|
13 . Hafta |
Map Abstract Data Type and Implementations |
|
14 . Hafta |
Graph Definitions and Implementations of General Graph Structures |
|
14 . Hafta |
Çizgelerin Tanımı ve Genel Çizge Yapılarının Gerçeklenmesi |
|
15 . Hafta |
Temel Çizge Problemleri ve Çözüm Yöntemleri |
|
15 . Hafta |
Basic Graph Problems and Solution Methods |
|
16 . Hafta |
Dönem Sonu Sınavı |
|
|
Değerlendirme Sistemi |
Yarıyıl içi çalışmaları |
Sayısı |
Katkı Payı (%) |
Ara Sınav |
1 |
30 |
Ödev |
0 |
0 |
Final Sınavı |
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
1 |
40 |
|
0 |
0 |
|
0 |
0 |
|
14 |
30 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
Toplam |
100 |
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı |
2 |
30 |
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı |
1 |
0 |
Toplam |
100 |
|
AKTS (Öğrenci İş Yükü) Tablosu |
Etkinlikler |
Sayısı |
Süresi |
Toplam İş Yükü |
Ders Süresi (hafta sayısı* haftalık toplam ders saati) |
1 |
2 |
2 |
Sınıf Dışı Ders Calışma Süresi (Ön çalışma, pekiştirme) |
0 |
0 |
0 |
Ödev için Bireysel Çalışma |
0 |
0 |
0 |
Ara sınav için bireysel çalışma |
0 |
0 |
0 |
Final sınavı için bireysel çalışma |
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
1 |
2 |
2 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
14 |
2 |
28 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
14 |
4 |
56 |
|
7 |
2 |
14 |
|
7 |
2 |
14 |
|
14 |
2 |
28 |
|
0 |
0 |
0 |
Toplam İş Yükü |
144 |
|
Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi |
Sıra No |
Program Yeterlilikleri |
Katkı Düzeyi* |
1 |
2 |
3 |
4 |
5 |
1 |
A computer engineer possesses fundamental applied and conceptual knowledge in the field of computer engineering. |
|
|
|
|
X |
2 |
They utilize mathematics, natural sciences, and theoretical and applied knowledge in computer engineering to solve engineering problems. |
|
|
|
|
X |
3 |
They identify current engineering problems in various application domains and provide feasible recommendations for their solution using computer systems. |
|
|
|
|
X |
4 |
They perform analyses of software or hardware-based systems, components, and processes required for problem-solving and create optimal designs that meet specified requirements and constraints. |
|
|
X |
|
|
5 |
They select and implement modern methods and tools necessary for engineering applications. |
|
|
|
X |
|
6 |
Problemlerin çözümü için gerekli olan veriyi toplar ve işler, deneyler tasarlar, deneyleri gerçekleştirir ve sonuçlarını yorumlar. |
|
X |
|
|
|
7 |
Mühendislik projelerinin yönetim süreçlerini bilir, proje için en uygun yönetim araçlarını ve proje yaşam döngüsünü seçer ve uygular. |
X |
|
|
|
|
8 |
They code, test, operate, and maintain computer-based systems. |
|
|
|
|
X |
9 |
They work effectively in interdisciplinary research and software development teams, both within and outside their own field. |
|
|
|
|
X |
10 |
They keep up with current developments in computer engineering and related areas with a consciousness of the necessity of continuous professional development. |
X |
|
|
|
|
11 |
They utilize Turkish and English fluently and effectively for tracking scientific and technical resources, presenting projects, and writing academic publications. |
X |
|
|
|
|
12 |
They are aware of the legal consequences of information technology applications and the individual, corporate, social, and universal impacts. |
X |
|
|
|
|
13 |
Geliştirdiği yazılım ve sistemlerde mesleki ve etik sorumluk bilinciyle hareket eder. |
X |
|
|
|
|
14 |
They design and develop computer systems that will facilitate human life or increase comfort with analytical thinking skills. |
X |
|
|
|
|
15 |
They possess awareness as an individual who is informed about current and historical events and can interpret them rationally and draw conclusions. |
X |
|
|
|
|
|