
| Course Code | : YBS205 |
| Course Type | : Required |
| Couse Group | : First Cycle (Bachelor's Degree) |
| Education Language | : Turkish |
| Work Placement | : N/A |
| Theory | : 3 |
| Prt. | : 0 |
| Credit | : 3 |
| Lab | : 0 |
| ECTS | : 6 |
The aim of this course is to equip students with structured and object-oriented programming skills using the C++ programming language, to teach the operational logic of fundamental data structures and algorithms, and to improve their problem-solving abilities. Within the scope of the course, students first learn the fundamental structures of the C++ programming language and subsequently examine data structures and algorithm design concepts through practical applications.
Within the scope of the course, the fundamental concepts of the C++ programming language are first introduced in detail, including data types, variables, operators, decision structures, loops, functions, arrays, character arrays, pointer usage, dynamic memory management, and file operations. In addition, the concepts of structures (`struct`) and classes (`class`) are covered as an introduction to object-oriented programming. In the continuation of the course, data structures and algorithms are examined. In this context, algorithm analysis, time complexity, and Big-O notation are explained, while fundamental data structures such as linked lists, stacks, queues, and tree structures are introduced. Furthermore, linear search, binary search, and basic sorting algorithms are studied through practical applications. By the end of the course, it is aimed to improve students’ skills in problem solving, algorithm development, and selecting appropriate data structures.
| Prof. Muhsin ÖZDEMİR |
| 1. | Can develop programs using the fundamental structures of the C++ programming language. |
| 2. | Can apply algorithmic thinking approaches in problem-solving processes. |
| 3. | Can effectively use fundamental programming structures such as functions, arrays, pointers, and classes |
| 4. | Can perform data organization and management using fundamental data structures. |
| 5. | Can analyze and implement the operational logic of basic searching and sorting algorithms. |
| 1. | Rifat Çölkesen, Veri Yapıları ve Algoritmalar, Papatya Yayıncılık 2002. |
| 2. | 2. Cormen, Leiserton, Rivest, Introduction to Algorithms, MIT Press, 2001 |
| 3. | Horowitz, Sahni, Rajasekaran, Computer Algorithms, Computer Science Press, 1998. |
| Type of Assessment | Count | Percent |
|---|---|---|
| Quiz | 2 | %10 |
| Midterm Examination | 1 | %30 |
| Final Examination | 1 | %60 |
| Activities | Count | Preparation | Time | Total Work Load (hours) |
|---|---|---|---|---|
| Lecture - Theory | 13 | 2 | 3 | 65 |
| Assignment | 13 | 2 | 0 | 26 |
| Individual Work | 13 | 2 | 0 | 26 |
| Quiz | 1 | 8 | 1 | 9 |
| Midterm Examination | 1 | 9 | 1 | 10 |
| Final Examination | 1 | 13 | 1 | 14 |
| TOTAL WORKLOAD (hours) | 150 | |||
PÇ-1 | PÇ-2 | PÇ-3 | PÇ-4 | PÇ-5 | PÇ-6 | PÇ-7 | PÇ-8 | PÇ-9 | PÇ-10 | PÇ-11 | PÇ-12 | PÇ-13 | PÇ-14 | PÇ-15 | |
OÇ-1 | 4 | 4 | 4 | 3 | 2 | 4 | 4 | 3 | 3 | 2 | 4 | 3 | 4 | 3 | 3 |
OÇ-2 | 5 | 4 | 5 | 3 | 3 | 5 | 5 | 4 | 4 | 2 | 4 | 3 | 5 | 4 | 4 |
OÇ-3 | 4 | 5 | 5 | 3 | 3 | 4 | 4 | 4 | 3 | 2 | 5 | 4 | 4 | 3 | 4 |
OÇ-4 | 4 | 4 | 5 | 3 | 3 | 4 | 4 | 5 | 4 | 2 | 5 | 3 | 4 | 3 | 5 |
OÇ-5 | 4 | 4 | 4 | 2 | 2 | 4 | 5 | 4 | 4 | 2 | 4 | 2 | 5 | 3 | 4 |