Course Information
SemesterCourse Unit CodeCourse Unit TitleT+P+LCreditNumber of ECTS Credits
2YBS108Algorithm Development3+0+036

Course Details
Language of Instruction Turkish
Level of Course Unit Bachelor's Degree
Department / Program Management Information Systems
Mode of Delivery Face to Face
Type of Course Unit Compulsory
Objectives of the Course • To teach students basic algorithm design principles and algorithm development processes.
• To develop algorithmic thinking ability.
• To show how to implement the designed algorithms using the Python programming language.
Course Content • What is an algorithm? Algorithm design and development processes.
• Algorithm design techniques: Using sequential, stable, cyclic structures.
• Demonstration of algorithms using flow diagrams and pseudo code.
• Applications of basic data structures (arrays, lists, stacks, queues, linked lists) on algorithms.
• Basic sorting and searching algorithms.
• Introduction to Python programming language and basic structures.
• Algorithm applications with Python: Control structures, functions, modules.
• Working with Python collection structures: List, tuple, dictionary, set.
• File operations and error handling with Pytho
Course Methods and Techniques • Theoretical explanation, applications, analysis of algorithmic handling of some situations in life, individual and group studies, laboratory applications.
Prerequisites and co-requisities None
Course Coordinator None
Name of Lecturers Asist Prof. Volkan Oban
Assistants None
Work Placement(s) No

Recommended or Required Reading
Resources • Introduction to Algorithms, 4th edition, by Thomas H. Cormen
• Data Structures and Algorithms in Python- Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser. Yayın Yılı: 2013
• Introduction to Algorithms - Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Yayın Yılı: 2009 (3rd Edition)
• Veri Yapıları ve Algoritmalar-Rıfat Çölkesen,2019
sınav,sunum

Course Category
Engineering %50
Field %50

Planned Learning Activities and Teaching Methods
Activities are given in detail in the section of "Assessment Methods and Criteria" and "Workload Calculation"

Assessment Methods and Criteria
In-Term Studies Quantity Percentage
Mid-terms 1 % 40
Final examination 1 % 60
Total
2
% 100

 
ECTS Allocated Based on Student Workload
Activities Quantity Duration Total Work Load
Course Duration 14 3 42
Hours for off-the-c.r.stud 14 4 56
Mid-terms 1 20 20
Final examination 1 35 35
Total Work Load   Number of ECTS Credits 6 153

Course Learning Outcomes: Upon the successful completion of this course, students will be able to:
NoLearning Outcomes
1 Develops analytical thinking and problem solving skills.
2 Understands various algorithm design and development techniques
3 Develop algorithms using basic data structures.
4 Develops the ability to write programmes in Python programming language.
5 Apply basic algorithms such as sorting and search algorithms.


Weekly Detailed Course Contents
WeekTopicsStudy MaterialsMaterials
1 Introduction and Course Description
2 Problem Solving Methods
3 Fundamentals of Algorithm Design
4 Control Structures and Loops
5 Functions and Modular Programming
6 Basic Sorting and Search Algorithms, Graphs
7 Arrays and Array Operations
8 Basic Data Structures: Stacks and Queues
9 Introduction to Python Programming Language
10 Control and Loop Structures in Python
11 Arrays and Functions with Python
12 Ranking and Search Algorithms
13 Implementation of Algorithms with Python
14 File Operations, Examination of Libraries


Contribution of Learning Outcomes to Programme Outcomes
P1 P2 P3 P4 P5 P6 P7 P8
All 3 5 4 4 4 2 4 1
C1 2 4 3 5 4 3 5 1
C2 3 5 4 3 4 2 4 2
C3 3 4 4 3 3 2 3 1
C4 2 5 5 3 4 2 3 1
C5 3 5 4 3 3 2 4 1

bbb


https://obs.gedik.edu.tr/oibs/bologna/progCourseDetails.aspx?curCourse=162993&curProgID=5702&lang=en