|
YZT1002 | Data Structures and Algorithm | 3+2+0 | ECTS:6 | Year / Semester | Spring Semester | Level of Course | Short Cycle | Status | Compulsory | Department | Computer Technology | Prerequisites and co-requisites | None | Mode of Delivery | | Contact Hours | 14 weeks - 3 hours of lectures and 2 hours of practicals per week | Lecturer | Öğr. Gör. Didem ÇAKIR | Co-Lecturer | | Language of instruction | Turkish | Professional practise ( internship ) | None | | The aim of the course: | It is a fundamental cornerstone of computer science, aiming to provide students with a comprehensive understanding of organizing, storing, and processing data. This course teaches the functions, advantages, and applications of various data structures (such as arrays, linked lists, stacks, queues, trees, and graphs) while also emphasizing the design, analysis, and optimization of algorithms. Students develop their problem-solving skills by learning to create effective and efficient algorithms, thereby gaining both theoretical knowledge and practical skills. This equips them with the ability to solve complex problems encountered in real-world applications.
|
Learning Outcomes | CTPO | TOA | Upon successful completion of the course, the students will be able to : | | | LO - 1 : | Can develop algorithms. | 2,3,4,7 | | LO - 2 : | Can perform algorithm analysis. | 2,3,4,7 | | LO - 3 : | Can explain and implement basic data structures. | 1,2,3,7 | | LO - 4 : | Understands data structures and their usage. | 1,2,3,4 | | LO - 5 : | Understands tree structures and tree traversal algorithms. | 1,2,3,4 | | CTPO : Contribution to programme outcomes, TOA :Type of assessment (1: written exam, 2: Oral exam, 3: Homework assignment, 4: Laboratory exercise/exam, 5: Seminar / presentation, 6: Term paper), LO : Learning Outcome | |
Algorithms and Data Structures, Fundamentals of Algorithm Analysis, Basic Data Structures and Algorithms, Graphs |
|
Course Syllabus | Week | Subject | Related Notes / Files | Week 1 | Introduction to Algorithms and Data Structures
| | Week 2 | Algorithm Design, Properties of Algorithms, The Role of Algorithms in Mathematics
| | Week 3 | Pseudocode and Examples
| | Week 4 | Flowcharts and Examples | | Week 5 | Fundamentals of Algorithm Analysis, Algorithm Complexity, Notations | | Week 6 | Primitive Data Types, Abstract Data Types and Classes, Collection Classes
| | Week 7 | Arrays and Lists | | Week 8 | Sorting Algorithms
| | Week 9 | Midterm Exam | | Week 10 | Search Algorithms | | Week 11 | Stack and Queue Structures | | Week 12 | Tree Data Structures and Tree Traversal Algorithms | | Week 13 | Recursive Algorithms | | Week 14 | Tree Data Structures and Tree Traversal Algorithms | | Week 15 | Hash Table Data Structure and Basic Operations | | Week 16 | Final Exam
| | |
Method of Assessment | Type of assessment | Week No | Date | Duration (hours) | Weight (%) | Mid-term exam | 9 | | 1 | 50 | End-of-term exam | 16 | | 1 | 50 | |
Student Work Load and its Distribution | Type of work | Duration (hours pw) | No of weeks / Number of activity | Hours in total per term | Yüz yüze eğitim | 3 | 15 | 45 | Sınıf dışı çalışma | 2 | 15 | 30 | Laboratuar çalışması | 2 | 15 | 30 | Arasınav için hazırlık | 1 | 9 | 9 | Arasınav | 1 | 1 | 1 | Proje | 2 | 15 | 30 | Kısa sınav | 1 | 5 | 5 | Dönem sonu sınavı için hazırlık | 1 | 15 | 15 | Dönem sonu sınavı | 1 | 1 | 1 | Total work load | | | 166 |
|