COURSE DESCRIPTION FORM INSTITUTION Computer Science National University of Computer and Emerging Sciences PROGRAM (S) TO BE EVALUATED A. Course Description (Fill out the following table for each course in your computer science curriculum. A filled out form should not be more than 2-3 pages.) Course Code CS302 Course Title DESIGN & ANALYSIS OF ALGORITHMS Credit Hours 3 Prerequisites by Course(s) and Topics Data Structures Assessment Instruments with Weights (homework, quizzes, midterms, final, programming assignments, lab work, etc.) Assessment with the weight. Course Coordinator Assessment Type Weight Assignments / Quizzes 10 Quizzes 05 Mid-Terms 20 (10 each) Project 15 Final 50 Dr. Muhammad Atif Tahir URL (if any) Current Catalog Description Textbook (or Laboratory Manual for Laboratory Courses) Thomas H. Cormen et al. “Introduction to Algorithms” 3rd Edition. Anany Levitin “Introduction to the design and analysis of algorithms” 3rd Edition. 1 NCEAC.FORM.001.D Reference Material Course Goals Outcomes of Instruction 1. Design algorithms using different algorithms design techniques i.e. Brute Force, Divide & Conquer, Dynamic Programming, Greedy Algorithms & Backtracking, Branch & Bound. 2. Analyse the time and space complexity of different algorithms by using standard analysis techniques for recursive and non-recursive algorithms. 3. Describe, compare, analyse, and solve general algorithmic problem types: Sorting, Searching, String Processing, Graph and NP-Complete Problems. Implement the algorithms, compare the implementations empirically, and apply fundamental algorithms knowledge to solve real-world problems. Student Outcomes Addressed by the Course (From ABET) 4. (a) An ability to apply knowledge of computing and mathematics appropriate to the program’s student outcomes and to the discipline (b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution (c) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs (d) An ability to function effectively on teams to accomplish a common goal (e) An understanding of professional, ethical, legal, security and social issues and responsibilities (f) An ability to communicate effectively with a range of audiences (g) An ability to analyze the local and global impact of computing on individuals, organizations, and society (h) Recognition of the need for and an ability to engage in continuing professional development (i) An ability to use current techniques, skills, and tools necessary for computing practice. (j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices. [CS] (k) An ability to apply design and development principles in the construction of software systems of varying complexity. [CS] 2 NCEAC.FORM.001.D Topics Covered in the Course, with Number of Lectures on Each Topic (assume 15-week instruction and one-hour lectures) 1. Topics to be covered: No. of Weeks Contact Hours 2 6 2,3 1.5 4.5 1,2 1 3 1,2,3 1.5 4.5 1,4 1 3 2,3,4 1 3 3,4 2 6 3,4 3 9 2 Review 0.5 1.5 1,2,3,4 Project Presentations 1.5 4.5 2,3,4 Total 15 45 List of Topics Basics of Algorithms, Mathematical Foundation, Growth of Function, Asymptotic Notations. Chapter 1.All, 2.2,2.3, 3.All Divide and Conquer, Substitution Method, Recurrence-Tree Method, Master’s Method. Chapter 4.3,4.4,4.5,4.6 Sorting (Merge, Insertion, Quick, Heap, Counting, Radix), Data Structures (Stack, Queue, Linked List, Hash Table, Binary Tree). Chapter 2.1, 6.4, 7.All, 8.All Dynamic Programming Greedy Algorithms Chapters 15.All, 16.All Graph Algorithms: Kruskal’s Algorithm, Prim’s Algorithms, Bellman-Ford Algorithms, Dijkstra’s Algorithm Chapters 23.All,24.All,25.All,26.All String Matching Chapter 32.All Multithreaded Algorithms, Matrix Operations Chapter 27.All, 28.All NP Complete Problems and Solutions using Approximation Algorithm Chapters 34.All, 35.All CLO Laboratory Projects/Experiments Done in the Course 3 NCEAC.FORM.001.D Programming Assignments Done in the Course Class Time Spent on (in credit hours) Oral and Written Communications Theory Problem Analysis Solution Design Social and Ethical Issues 30 10 5 0 Every student is required to submit at least __1___ written reports of typically _2____ pages and to make __1___ oral presentations of typically __10___ minute’s duration. Include only material that is graded for grammar, spelling, style, and so forth, as well as for technical content, completeness, and accuracy. Instructor Name ZESHAN KHAN____________ Instructor Signature ____________________________ Date ____________________________ 4 NCEAC.FORM.001.D