Course Name Code Semester T+U Hours Credit ECTS
Data Structures and Programming BTP 106 2 3 + 0 3 5
Precondition Courses
Recommended Optional Courses
Course Language Turkish
Course Level onlisans
Course Type Compulsory
Course Coordinator Öğr.Gör. SİNAN İLYAS
Course Lecturers
Course Assistants
Course Category
Course Objective The goal is to make students able to develop software using data structures, by teaching general structures of programming languages.
Course Content 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.
# Course Learning Outcomes Teaching Methods Assessment Methods
1 To describe general structures of programming languages and use C/C++ programming language Lecture, Question-Answer, Discussion, Self Study, Testing, Homework,
2 To describe data types used in programming languages and use C/C++ programming language Lecture, Question-Answer, Discussion, Self Study, Testing, Homework,
3 To describe basic decisional structures and loops used in programming languages and use C/C++ programming language Lecture, Question-Answer, Discussion, Self Study, Testing, Homework,
4 To describe functions and structure of recursive functions, create recursive functions in programming languages Lecture, Question-Answer, Discussion, Self Study, Testing, Homework,
5 To analyze developed algorithms and compute time complexity Lecture, Question-Answer, Discussion, Self Study, Testing, Homework,
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
Week Course Topics Preliminary Preparation
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
Resources
Course Notes
Course Resources
Order Program Outcomes Level of Contribution
1 2 3 4 5
1 X
2 X
3 X
4 X
5 X
6
7
8
9 X
10
11
Evaluation System
Semester Studies Contribution Rate
1. Ara Sınav 50
1. Kısa Sınav 15
2. Kısa Sınav 15
1. Ödev 20
Total 100
1. Yıl İçinin Başarıya 20
1. Final 80
Total 100
ECTS - Workload Activity Quantity Time (Hours) Total Workload (Hours)
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
Total Workload 136
Total Workload / 25 (Hours) 5.44
dersAKTSKredisi 5