CS3335 Design and Analysis of Algorithms
Course Aims & Objectives: This course aims to introduce the classic algorithms in various domains, and techniques for designing efficient algorithms.. Upon completion of this course the student should be able to: 1. apply the algorithms and design techniques to solve problems;2. have a sense of the complexities of various problems in different domains. Units: 3 Level: B3Medium of Instruction: English Keyword Syllabus: Algorithm analysis. Algorithm design : divide-and-conquer approach, greedy approach. Graph algorithms : graph searching, topological sort, minimum spanning tree, shortest paths, backtracking and its applications in games. String matching. Dynamic programming and longest common subsequence. Theory of NP-completeness. Turing machines and the halting problem. Introduction to computational complexity. Teaching Pattern: Duration of course: 1 semesterCurrent mix of lecture/tutorial/laboratory, other: 2 hrs. lecture; 1 hr. tutorial. Assessment Pattern: Examination duration: 2 hours Percentage distribution of marks for coursework, examination, other: 30% CW; 70% Exam Grading pattern: Standard (A+AA-...F) For a student to pass the course, at least 30% of the maximum mark for the examination must be obtained. Pre-requisite(s): Nil Pre-cursor(s):CS2302 /orCS2364 Data Structures and Algorithms /orCS2468 /orCS3334 /orEE2331 /or equivalentEquivalent Course(s): Nil
Course Aims & Objectives: This course aims to introduce the classic algorithms in various domains, and techniques for designing efficient algorithms..
Upon completion of this course the student should be able to: 1. apply the algorithms and design techniques to solve problems;2. have a sense of the complexities of various problems in different domains. Units: 3 Level: B3Medium of Instruction: English Keyword Syllabus: Algorithm analysis. Algorithm design : divide-and-conquer approach, greedy approach. Graph algorithms : graph searching, topological sort, minimum spanning tree, shortest paths, backtracking and its applications in games. String matching. Dynamic programming and longest common subsequence. Theory of NP-completeness. Turing machines and the halting problem. Introduction to computational complexity.
Teaching Pattern: Duration of course: 1 semesterCurrent mix of lecture/tutorial/laboratory, other: 2 hrs. lecture; 1 hr. tutorial. Assessment Pattern: Examination duration: 2 hours Percentage distribution of marks for coursework, examination, other: 30% CW; 70% Exam Grading pattern: Standard (A+AA-...F) For a student to pass the course, at least 30% of the maximum mark for the examination must be obtained. Pre-requisite(s): Nil Pre-cursor(s):CS2302 /orCS2364 Data Structures and Algorithms /orCS2468 /orCS3334 /orEE2331 /or equivalentEquivalent Course(s): Nil