Course Name Code Semester T+U Hours Credit ECTS
Algorithm Analysis and Design BSM 312 6 3 + 0 3 5
Precondition Courses
Recommended Optional Courses
Course Language Turkish
Course Level Bachelor's Degree
Course Type Compulsory
Course Coordinator Prof.Dr. NEJAT YUMUŞAK
Course Lecturers Prof.Dr. NEJAT YUMUŞAK, Dr.Öğr.Üyesi KEVSER OVAZ AKPINAR,
Course Assistants
Course Category Field Proper Education
Course Objective Learning the basic algorithms based on the solutions of classical and scientific problems. Analysing the runtime, memory and energy usage of the algorithms. Having knowledge about time complexity of an algorithm. NP-hard and NP-Complete problem, Basic NP-Complete problem with the convergence and parallel algorithms.
Course Content Introduction to algorithms, asymptotic notations, algorithm efficiency, best, worst and average time complexity analysis, recursive functions and solution methods, substitution method, sorting and searching algorithms, shortest path finding, parallel algorithms, divede and conquer methods, reduces solve methods , change, solve methods, graph algorithms, DFS, BFS, dynamic programming input and greedy algorithms, linear programming, complexity classes P, NP, NP-Complete, flashbacks method, the lower limit theory, hashing.
# Course Learning Outcomes Teaching Methods Assessment Methods
1 Learning Algorithm types, solving methods and time complexity Lecture, Drilland Practice, Problem Solving, Testing, Homework, Project / Design,
2 To have knowledge about dynamic programming, lineer programming complexity classes Lecture, Drilland Practice, Problem Solving, Testing, Homework,
3 Homework about complexity classes Lecture, Drilland Practice, Problem Solving, Testing, Homework, Project / Design,
4 Any two algorithm comparison project Lecture, Drilland Practice, Problem Solving, Testing, Homework,
Week Course Topics Preliminary Preparation
1 Introduction to algorithms, discrete mathematics, data stuctures, asymptotic notations, algorithm efficiency
2 Best, worst and average time complexity analysis
3 Recursion functions and solving techniques, master and equation method
4 Sorting and searching algorithms, complete and breadth search methods, finding the shortest path
5 Parallel algorithms and random algorithms
6 Divide and conquer methods
7 Shrink solve method and topolog sorting
8 Replae and solve, balanced search trees, graph algorithms, BFS, DFS
9 Introduction to dynamic programming, minimum spanning trees
10 Dynamic programming and greedy algorithms
11 Linear programming, string matching and string correction
12 Complexity classes, P, NP, NP-Complete, NP-Complete convergence
13 The return method, 8 queens problem, graph coloring problem, the minimum value problems
14 Hashing
Course Notes Lecture Notes EBS
Course Resources 1.Introduction to the Design and Analysis of Algorithms , Anany Levitin ISBN: 0321358287
2.Analysis of Algorithms, Jeffrey McConnell, ISBN: 0763707821
Order Program Outcomes Level of Contribution
1 2 3 4 5
1 To have sufficient foundations on engineering subjects such as science and discrete mathematics, probability/statistics; an ability to use theoretical and applied knowledge of these subjects together for engineering solutions, X
2 An ability to determine, describe, formulate and solve engineering problems; for this purpose, an ability to select and apply proper analytic and modeling methods,al background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations X
3 An ability to select and use modern techniques and tools for engineering applications; an ability to use information technologies efficiently, X
4 An ability to analyze a system, a component or a process and design a system under real limits to meet desired needs; in this direction, an ability to apply modern design methods, X
5 An ability to design, conduct experiment, collect data, analyze and comment on the results and consciousness of becoming a volunteer on research, X
6 Understanding, awareness of administration, control, development and security/reliability issues about information technologies, X
7 An ability to work efficiently in multidisciplinary teams, self confidence to take responsibility, X
8 An ability to present himself/herself or a problem with oral/written techniques and have efficient communication skills; know at least one extra language, X
9 An awareness about importance of lifelong learning; an ability to update his/her knowledge continuously by means of following advances in science and technology, X
10 Understanding, practicing of professional and ethical responsibilities, an ability to disseminate this responsibility on society, X
11 An understanding of project management, workplace applications, health issues of laborers, environment and job safety; an awareness about legal consequences of engineering applications, X
12 An understanding universal and local effects of engineering solutions; awareness of entrepreneurial and innovation and to have knowledge about contemporary problems.
Evaluation System
Semester Studies Contribution Rate
1. Kısa Sınav 15
1. Ödev 15
1. Ara Sınav 55
2. Kısa Sınav 15
Total 100
1. Final 50
1. Yıl İçinin Başarıya 50
Total 100
ECTS - Workload Activity Quantity Time (Hours) Total Workload (Hours)
Course Duration (Including the exam week: 16x Total course hours) 14 3 42
Hours for off-the-classroom study (Pre-study, practice) 14 2 28
Mid-terms 1 12 12
Project / Design 1 19 19
Final examination 1 24 24
Total Workload 125
Total Workload / 25 (Hours) 5
dersAKTSKredisi 5