Skip to main content

Course Description

CourseCodeSemesterT+P (Hour)CreditECTS
ADVANCED ALGORITHM ANALYSIS and DESIGNCOED1212915Spring Semester3+038
Course Program
Prerequisites Courses
Recommended Elective Courses
Language of CourseEnglish
Course LevelThird Cycle (Doctorate Degree)
Course TypeElective
Course CoordinatorProf.Dr. Reda ALHAJJ
Name of Lecturer(s)Prof.Dr. Reda ALHAJJ
Assistant(s)
AimIntroduce fundamental techniques for designing algorithms and analyzing the time and space requirements of these algorithms in a formal way. Mathematical background for algorithm analysis, sorting, searching, basic algorithms design and graph algorithms will be covered.
Course ContentThis course contains; Introduction: analysing algorithms, designing algorithms.,Asymptotic Notation.,Divide and Conquer Design Paradigm. ,Solving Recurrences.,Analysis of Quicksort, Randomized Quicksort.,Heapsort. ,Quicksort.,Sorting in Linear Time. ,Midterm Study,Medians and Order Statistics. ,Dynamic Programming.,Greedy Algorithms.,Amortized Analysis, Dynamic Tables.,Graphs, Breadth-first Search (BFS). .
Dersin Öğrenme KazanımlarıTeaching MethodsAssessment Methods
1) Describe the fundamentals of algorithm analysis.12, 14, 16, 9A, E
2) Construct complex algorithms using the data structures that they have learned.12, 14, 16, 9A, E
3) Develop complex algorithms and advanced data structures that are using trees and will be able to apply them to real world problems.10, 12, 14, 17, 9A, E, F
4) Develop complex algorithms and advanced data structures that are using graphs and will be able to apply them to real world problems.10, 12, 14, 17, 9A, E, F
5) Systematically look at a given computational problem and design a novel algorithm using techniques like dynamic programming, divide and conquer and greedy algorithms.12, 14, 16, 19, 9A, E
Teaching Methods:10: Discussion Method, 12: Problem Solving Method, 14: Self Study Method, 16: Question - Answer Technique, 17: Experimental Technique, 19: Brainstorming Technique, 9: Lecture Method
Assessment Methods:A: Traditional Written Exam, E: Homework, F: Project Task

Course Outline

OrderSubjectsPreliminary Work
1Introduction: analysing algorithms, designing algorithms.Lecture Slides and textbook chapters 1 & 2
2Asymptotic Notation.Lecture Slides and textbook chapter 3.
3Divide and Conquer Design Paradigm. Lecture Slides and textbook chapter 4
4Solving Recurrences.Lecture Slides and textbook chapter 4
5Analysis of Quicksort, Randomized Quicksort.Lecture Slides and textbook chapter 5
6Heapsort. Lecture Slides and textbook chapter 6
7Quicksort.Lecture Slides and textbook chapter 7
8Sorting in Linear Time. Lecture Slides and textbook chapter 8
9Midterm StudyLecture Slides and textbook chapters from 1 to 9, inclusive.
10Medians and Order Statistics. Lecture Slides and textbook chapter 9
11Dynamic Programming.Lecture Slides and textbook chapter 15
12Greedy Algorithms.Lecture Slides and textbook chapter 16
13Amortized Analysis, Dynamic Tables.Lecture Slides and textbook chapter 17
14Graphs, Breadth-first Search (BFS). Lecture Slides and textbook chapter 22
Resources
T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithms, Mit Press and McGraw-Hill, 2009.
The notes and the presentations will be delivered during the lectures.

Course Contribution to Program Qualifications

Course Contribution to Program Qualifications
NoProgram QualificationContribution Level
12345
1
Develop and deepen the current and advanced knowledge in the field with original thought and/or research and come up with innovative definitions based on Master's degree qualifications.
X
2
Conceive the interdisciplinary interaction which the field is related with ; come up with original solutions by using knowledge requiring proficiency on analysis, synthesis and assessment of new and complex ideas.
X
3
Evaluate and use new information within the field in a systematic approach and gain advanced level skills in the use of research methods in the field.
X
4
Develop an innovative knowledge, method, design and/or practice or adapt an already known knowledge, method, design and/or practice to another field.
X
5
Broaden the borders of the knowledge in the field by producing or interpreting an original work or publishing at least one scientific paper in the field in national and/or international refereed journals.
6
Contribute to the transition of the community to an information society and its sustainability process by introducing scientific, technological, social or cultural improvements.
7
Independently perceive, design, apply, finalize and conduct a novel research process.
X
8
Ability to communicate and discuss orally, in written and visually with peers by using a foreign language at least at a level of European Language Portfolio C1 General Level.
X
9
Critical analysis, synthesis and evaluation of new and complex ideas in the field.
X
10
Recognizes the scientific, technological, social or cultural improvements of the field and contribute to the solution finding process regarding social, scientific, cultural and ethical problems in the field and support the development of these values.

Assessment Methods

Contribution LevelAbsolute Evaluation
Rate of Midterm Exam to Success 50
Rate of Final Exam to Success 50
Total 100
ECTS / Workload Table
ActivitiesNumber ofDuration(Hour)Total Workload(Hour)
Course Hours14342
Guided Problem Solving14456
Resolution of Homework Problems and Submission as a Report6848
Term Project000
Presentation of Project / Seminar000
Quiz000
Midterm Exam14040
General Exam14040
Performance Task, Maintenance Plan000
Total Workload(Hour)226
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(226/30)8
ECTS of the course: 30 hours of work is counted as 1 ECTS credit.

Detail Informations of the Course

Course Description

CourseCodeSemesterT+P (Hour)CreditECTS
ADVANCED ALGORITHM ANALYSIS and DESIGNCOED1212915Spring Semester3+038
Course Program
Prerequisites Courses
Recommended Elective Courses
Language of CourseEnglish
Course LevelThird Cycle (Doctorate Degree)
Course TypeElective
Course CoordinatorProf.Dr. Reda ALHAJJ
Name of Lecturer(s)Prof.Dr. Reda ALHAJJ
Assistant(s)
AimIntroduce fundamental techniques for designing algorithms and analyzing the time and space requirements of these algorithms in a formal way. Mathematical background for algorithm analysis, sorting, searching, basic algorithms design and graph algorithms will be covered.
Course ContentThis course contains; Introduction: analysing algorithms, designing algorithms.,Asymptotic Notation.,Divide and Conquer Design Paradigm. ,Solving Recurrences.,Analysis of Quicksort, Randomized Quicksort.,Heapsort. ,Quicksort.,Sorting in Linear Time. ,Midterm Study,Medians and Order Statistics. ,Dynamic Programming.,Greedy Algorithms.,Amortized Analysis, Dynamic Tables.,Graphs, Breadth-first Search (BFS). .
Dersin Öğrenme KazanımlarıTeaching MethodsAssessment Methods
1) Describe the fundamentals of algorithm analysis.12, 14, 16, 9A, E
2) Construct complex algorithms using the data structures that they have learned.12, 14, 16, 9A, E
3) Develop complex algorithms and advanced data structures that are using trees and will be able to apply them to real world problems.10, 12, 14, 17, 9A, E, F
4) Develop complex algorithms and advanced data structures that are using graphs and will be able to apply them to real world problems.10, 12, 14, 17, 9A, E, F
5) Systematically look at a given computational problem and design a novel algorithm using techniques like dynamic programming, divide and conquer and greedy algorithms.12, 14, 16, 19, 9A, E
Teaching Methods:10: Discussion Method, 12: Problem Solving Method, 14: Self Study Method, 16: Question - Answer Technique, 17: Experimental Technique, 19: Brainstorming Technique, 9: Lecture Method
Assessment Methods:A: Traditional Written Exam, E: Homework, F: Project Task

Course Outline

OrderSubjectsPreliminary Work
1Introduction: analysing algorithms, designing algorithms.Lecture Slides and textbook chapters 1 & 2
2Asymptotic Notation.Lecture Slides and textbook chapter 3.
3Divide and Conquer Design Paradigm. Lecture Slides and textbook chapter 4
4Solving Recurrences.Lecture Slides and textbook chapter 4
5Analysis of Quicksort, Randomized Quicksort.Lecture Slides and textbook chapter 5
6Heapsort. Lecture Slides and textbook chapter 6
7Quicksort.Lecture Slides and textbook chapter 7
8Sorting in Linear Time. Lecture Slides and textbook chapter 8
9Midterm StudyLecture Slides and textbook chapters from 1 to 9, inclusive.
10Medians and Order Statistics. Lecture Slides and textbook chapter 9
11Dynamic Programming.Lecture Slides and textbook chapter 15
12Greedy Algorithms.Lecture Slides and textbook chapter 16
13Amortized Analysis, Dynamic Tables.Lecture Slides and textbook chapter 17
14Graphs, Breadth-first Search (BFS). Lecture Slides and textbook chapter 22
Resources
T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithms, Mit Press and McGraw-Hill, 2009.
The notes and the presentations will be delivered during the lectures.

Course Contribution to Program Qualifications

Course Contribution to Program Qualifications
NoProgram QualificationContribution Level
12345
1
Develop and deepen the current and advanced knowledge in the field with original thought and/or research and come up with innovative definitions based on Master's degree qualifications.
X
2
Conceive the interdisciplinary interaction which the field is related with ; come up with original solutions by using knowledge requiring proficiency on analysis, synthesis and assessment of new and complex ideas.
X
3
Evaluate and use new information within the field in a systematic approach and gain advanced level skills in the use of research methods in the field.
X
4
Develop an innovative knowledge, method, design and/or practice or adapt an already known knowledge, method, design and/or practice to another field.
X
5
Broaden the borders of the knowledge in the field by producing or interpreting an original work or publishing at least one scientific paper in the field in national and/or international refereed journals.
6
Contribute to the transition of the community to an information society and its sustainability process by introducing scientific, technological, social or cultural improvements.
7
Independently perceive, design, apply, finalize and conduct a novel research process.
X
8
Ability to communicate and discuss orally, in written and visually with peers by using a foreign language at least at a level of European Language Portfolio C1 General Level.
X
9
Critical analysis, synthesis and evaluation of new and complex ideas in the field.
X
10
Recognizes the scientific, technological, social or cultural improvements of the field and contribute to the solution finding process regarding social, scientific, cultural and ethical problems in the field and support the development of these values.

Assessment Methods

Contribution LevelAbsolute Evaluation
Rate of Midterm Exam to Success 50
Rate of Final Exam to Success 50
Total 100

Numerical Data

Ekleme Tarihi: 24/12/2023 - 02:34Son Güncelleme Tarihi: 24/12/2023 - 02:34