| Ders Adı | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
|---|---|---|---|---|---|
| Data Structures and Programmıng | BTP 106 | 2 | 3 + 0 | 3 | 5 |
| Ön Koşul Dersleri | |
| Önerilen Seçmeli Dersler | |
| Dersin Dili | Türkçe |
| Dersin Seviyesi | Ön Lisans |
| Dersin Türü | Zorunlu |
| Dersin Koordinatörü | Öğr.Gör. SİNAN İLYAS |
| Dersi Verenler | Öğr.Gör. SİNAN İLYAS, |
| Dersin Yardımcıları | |
| Dersin Kategorisi | Diğer |
| Dersin Amacı | The goal is to make students able to develop software using data structures, by teaching general structures of programming languages. |
| Dersin İçeriği | General structures of C/C++ programming language, general structures of programming languages, recursive functions, functions, stack structure, queue structure, linked lists, basic sorting and searching algorithms, algorithm analysis, tree structure. |
| # | Ders Öğrenme Çıktıları | Öğretim Yöntemleri | Ölçme Yöntemleri |
|---|---|---|---|
| 1 | To describe general structures of programming languages and use C/C++ programming language | Lecture, Question-Answer, Brain Storming, Lab / Workshop, | |
| 2 | To describe data types used in programming languages and use C/C++ programming language | Lecture, Question-Answer, Brain Storming, Lab / Workshop, | |
| 3 | To describe basic decisional structures and loops used in programming languages and use C/C++ programming language | Lab / Workshop, | |
| 4 | To describe functions and structure of recursive functions, create recursive functions in programming languages | Lecture, Question-Answer, Brain Storming, Lab / Workshop, | |
| 5 | To analyze developed algorithms and compute time complexity | Lecture, Question-Answer, Brain Storming, Lab / Workshop, | |
| 6 | To describe structures of queue, stack and linked list, and use these in software design level | ||
| 7 | To use basic sorting algorithms in software design | ||
| 8 | To use basic searching algorithms in software design | ||
| 9 | To describe structures and types of trees |
| Hafta | Ders Konuları | Ön Hazırlık |
|---|---|---|
| 1 | Introduction to data structures, general structure and properties of C/C++ programming language, use of C/C++ compiler | |
| 2 | General structure of programming language, basic data types, composite data types, declaration of data type, input-output operations in C/C++ | |
| 3 | Decisional structures (True-False, Multi-select structures) and Loops (while, for loops) in C | |
| 4 | Subroutines, functions, recursive functions in C/C++ | |
| 5 | Arrays (one-dimensional arrays, multi- dimensional arrays, matrices) in C/C++ | |
| 6 | Standard C Library functions (mathematical functions, termination functions, character operations and data conversion functions) | |
| 7 | Algorithm analysis, complexity of algorithms, operation time complexity and time complexity, analyze of time complexities | |
| 8 | Stack structures, add or remove nodes from a stack, example of a stack structure | |
| 9 | Queue structures, add or remove nodes from a queue, example of a queue structure | |
| 10 | Linked lists, types of linked lists (Circularly-linked lists, Doubly-linked lists, vs.), algorithmic approach for linked list structure | |
| 11 | Introduction to sorting algorithms, select and sort algorithms, bubble sort algorithms | |
| 12 | Insertion sort algorithm, merge sort algorithm | |
| 13 | Introduction to searching algorithm, linear search algorithm, binary search algorithm | |
| 14 | Tree structures, tree types |
| Kaynaklar | |
|---|---|
| Ders Notu | |
| Ders Kaynakları | |
| Sıra | Program Çıktıları | Katkı Düzeyi | |||||
|---|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | |||
| # | Ders Öğrenme Çıktılarının Program Çıktılarına Katkısı |
|---|---|
| 1 | To describe general structures of programming languages and use C/C++ programming language |
| 2 | To describe data types used in programming languages and use C/C++ programming language |
| 3 | To describe basic decisional structures and loops used in programming languages and use C/C++ programming language |
| 4 | To describe functions and structure of recursive functions, create recursive functions in programming languages |
| 5 | To analyze developed algorithms and compute time complexity |
| 6 | To describe structures of queue, stack and linked list, and use these in software design level |
| 7 | To use basic sorting algorithms in software design |
| 8 | To use basic searching algorithms in software design |
| 9 | To describe structures and types of trees |
| Değerlendirme Sistemi | |
|---|---|
| Yarıyıl Çalışmaları | Katkı Oranı |
| 1. Kısa Sınav | 50 |
| 2. Kısa Sınav | 50 |
| Toplam | 100 |
| 1. Yıl İçinin Başarıya | 20 |
| 1. Final | 80 |
| Toplam | 100 |
| AKTS - İş Yükü Etkinlik | Sayı | Süre (Saat) | Toplam İş Yükü (Saat) |
|---|---|---|---|
| Course Duration (Including the exam week: 16x Total course hours) | 16 | 3 | 48 |
| Hours for off-the-classroom study (Pre-study, practice) | 16 | 3 | 48 |
| Mid-terms | 1 | 10 | 10 |
| Quiz | 2 | 5 | 10 |
| Assignment | 1 | 5 | 5 |
| Final examination | 1 | 15 | 15 |
| Toplam İş Yükü | 136 | ||
| Toplam İş Yükü / 25 (Saat) | 5,44 | ||
| dersAKTSKredisi | 5 | ||