0% found this document useful (0 votes)
177 views4 pages

CSD 205-Design and Analysis of Algorithms-Spring2018 PDF

This document provides information about the Design and Analysis of Algorithms course offered at COMSATS Institute of Information Technology in the Spring 2018 semester. The key details are: - The course is 3 credit hours and taught over 15 weeks, covering topics such as algorithm complexity analysis, sorting algorithms, hashing, graphs, greedy algorithms, and dynamic programming. - Assessment includes two sessional tests, four quizzes, assignments, and a final exam. Students must achieve a minimum of 50% in each component and overall to pass the course. - The textbook is Introduction to Algorithms by Cormen, Leiserson, Rivest, and Riverst, 3rd Edition. Additional reference materials
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
177 views4 pages

CSD 205-Design and Analysis of Algorithms-Spring2018 PDF

This document provides information about the Design and Analysis of Algorithms course offered at COMSATS Institute of Information Technology in the Spring 2018 semester. The key details are: - The course is 3 credit hours and taught over 15 weeks, covering topics such as algorithm complexity analysis, sorting algorithms, hashing, graphs, greedy algorithms, and dynamic programming. - Assessment includes two sessional tests, four quizzes, assignments, and a final exam. Students must achieve a minimum of 50% in each component and overall to pass the course. - The textbook is Introduction to Algorithms by Cormen, Leiserson, Rivest, and Riverst, 3rd Edition. Additional reference materials
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 4

COMSATS Institute of Information Technology (CIIT)

Defence Road, Off Raiwind Road, Lahore

COURSE HANDBOOK – SPRING 2018


1 Course Title Design and Analysis of Algorithms
2 Course Code CSD 205
3 Credit Hours 3(3,0)
4 Semester Semester 4
5 Resource Person Dr. Muhammad Hasan Jamal
6 Resource Person Contact mhjamal@ciitlahore.edu.pk
7 Contact Hours (Theory) 3 hours per week
8 Contact Hours (Lab) Not Applicable
9 Office Hours TBD
10 Course Introduction
This course is designed to enable students to understand the design, complexity and efficiency issues
related to different algorithms. It is an introductory course to the design and analysis of algorithms. It
covers mainly asymptotic analysis of time complexity, Proofs of correctness, Algorithms and
advanced data structures for searching and sorting lists, and graph algorithms. Some advance topics
like dynamic programming and greedy algorithms with their applications will also be introduced.
11 Learning Objectives
 The student will develop knowledge of
 intermediate level algorithms and data structures
 techniques for the analysis of their complexity and correctness
 some of the fundamental limitations on what can and cannot be computed
efficiently.
 The student will be expected to learn
 models for asymptotic analysis of algorithms;
 techniques for searching and sorting lists including its analysis
 various sorts such as insertion, selection, merge, quick, count heap and linear sorts;
 lower/upper bounds on the complexity of sorting;
 Some problem solving techniques having multiple solution i.e. dynamic
programming and greedy algorithms
12 Course Contents
Detailed study of the basic notions of the design of algorithms and the underlying data structures.
Several measures of complexity are introduced. Emphasis on the structure, complexity, and efficiency
of algorithms.
13 Lecture Schedule
Weeks Topic of Lecture Reading
Assignment
Introduction to Algorithms:
Definition of Algorithm and its role in computing, its
implementation domain, data structure & techniques, Introduction
Week 1 to Algorithm analysis and its importance, RAM model, methods
for analysing algorithms, algorithm efficiency, complexity and
order of growth, and some other case studies, benchmarks for
analysis, complexity classes, Big – O Notation.
Growth of Functions: Asymptotic notations, O,  and 
notations, asymptotic notation in equations and inequalities,
Week 2 & 3 o–notation, -notation, comparison of functions, standard
notations & common function. Association of asymptotic notation
to complexity classes
Quiz 01, Assignment 01
Designing and analysis of sorting algorithms: Sorting and
order statistics, structure of data, why sorting is used? Different
sorting techniques, analysis of insertion, selection and bubble sort,
best, worst & average case analysis; loop invariants and the
Week 4 & 5 correctness, incremental approach, divide and conquer approach,
its use in merge and quick sort; description and analysis of merge
and quick sort, performance of merge and quick sort, worst,
average & best cases, analysis of merge and quick sort.
Quiz 02, Assignment 02
Designing and analysis of sorting algorithms: Heaps,
maintaining heap property, building a heap, the heap sort
algorithm, priority queues, sorting in linear time, lower bounds for
Week 6 sorting, decision–tree model, tracking and implementation of
counting sort, its analysis, tracking and implementation of radix
sort & bucket sort with their analysis.
Revision of Course for First Sessional
Sessional – I, Paper Checking and discussion about the
Week 7
solution of the paper
Week 8 Student Week
Recurrences & Recurrence Relations: Recurrences and its
technicalities, recursion, Fibonacci series, mathematical modelling
of recursive equations, Towers of Hanoi problem. The recursion–
Week 9 & 10 tree method, its implementation and use. Different cases of
recursion tree method. The Master method, the Master theorem &
its use
Quiz 03, Assignment 03
Hash Table & Hashing: Hashing, Direct–address table, Hash
Tables, Collision, Resolution by chaining, and Analysis of hashing
with chaining, Hash functions, Universal Hashing, Designing a
Week 11 & 12
universal class of hashing functions. Open Addressing, Linear
probing, Quadratic probing, Double Hashing, Analysis of open –
address hashing. Revision of Course for Second Sessional
Sessional – II, Paper Checking and discussion about the
Week 13
solution of the paper
Graphs: Shortest path calculation, Minimum Spanning Trees,
Week 14
Prims Algorithm, Kruskal Algorithm, Djikstras Algorithm
Greedy Algorithms: Elements of the greedy strategy, greedy
choice property, optimal substructure, greedy versus dynamic
programming. Activity Selection Problem, Making Change,
Week 15
Huffman Codes, prefix code, Construction of Huffman code, and
Correctness of Huffman’s algorithm.
Quiz 04, Assignment 04
Dynamic Programming: Assembly-line scheduling, fastest way
through the factory, recursive solution, computation of the fastest
time, construction of fastest way, Matrix–chain Multiplication,
Week 16 & 17 optimal parenthesization, recursive solution, optimal cost
calculation, construction of optimal solution. 0-1 Knapsack
Problem, recursive solution, optimal cost calculation, construction
of optimal solution. Revision of course
14 Course Assessment
The assessment of this module shall have following breakdown structure

First Sessional Test 10%


Second Sessional Test 15%
Quizzes/Assignments 25%
Terminal Examination 50%

The minimum pass marks for each course shall be 50%. Students obtaining less than 50% marks in
any course shall be deemed to have failed in that course. The correspondence between letter grades ,
credit points, and percentage marks at CIIT shall be as follows:
Grades Letter Grade Credit Points Percentage Marks
A ( Excellent) 4.0 90and above
A- 3.7 85-89
B+ 3.3 80-84
B (Good) 3.0 75-79
B- 2.7 70-74
C+ 2.3 65-69
C (Average) 2.0 60-64
C- 1.7 55-59
D (Minimum passing) 1.3 50-54
F (Failing) 0.0 Less than 50
Note: The marks to be assigned to students shall be in whole numbers and are not same as followed
in the annual system of Lancaster University.
15 Assessment Schedule
Week 3 Quiz 01, Assignment 01
Week 5 Quiz 02, Assignment 02
Week 7 Sessional-I
Week 10 Quiz 03, Assignment 03
Week 13 Sessional-II
Week 15 Quiz 04. Assignment 04
Week 18-19 Terminal Examination
16. Format of Assignment
This course indoctrinates the following format for all its assignments:
1. Paper Size: A4
2. Left Margin: 2 Inches
3. Right Margin: 1 Inch
4. Top Margin: 0.5 Inch
5. Bottom Margin: 0.5 Inch
6. Font: Times New Roman
7. Font Size:
a. Main Heading 14
b. Sub Heading 12
c. Text 12
d. Titles 16
8. Font Color: Black
9. Line Spacing: 1.5
10. Diagrams & Charts: Need not be colored
11. Title page must be designed as guided by resource person in class
12. Number of Pages: No Limit
13. Reference Style: APA (If applicable)
17. Text Book i. T. H. Cormen, C. E. Leiserson, and R. L. Rivest
(2009),Introduction to Algorithms, (3rd Ed.) MIT Press,
McGraw-Hill, New York.
18. Reference Books I. Algorithms, Robert Sedgewick, Edition 2nd,
II. Compared to What? An Introduction to the Analysis of
Algorithms, by G.J.E Rawlins
III. The Design and Analysis of Computer Algorithms, by
Alfred V. Aho
19. Plagiarism
Plagiarism involves the unacknowledged use of someone else’s work, usually in coursework, and passing it
off as if it were one’s own. Many students who submit apparently plagiarised work probably do so
inadvertently without realising it because of poorly developed study skills, including note taking,
referencing and citations; this is poor academic practice rather than malpractice. Some students,
particularly those from different cultures and educational systems, find UK academic
referencing/acknowledgement systems and conventions awkward, and proof-reading is not always easy
for dyslexic students and some visually-impaired students. Study skills education within programmes of
study should minimise the number of students submitting poorly referenced work. However, some
students plagiarise deliberately, with the intent to deceive. This intentional malpractice is a conscious, pre-
mediated form of cheating and is regarded as a particularly serious breach of the core values of academic
integrity. The Dual Degree Prorgamme has zero tolerance for intentional plagiarism.
Plagiarism can include the following:
1. collusion, where a piece of work prepared by a group is represented as if it were the student’s
own;
2. commission or use of work by the student which is not his/her own and representing it as if it
were, e.g.:
a. purchase of a paper from a commercial service, including internet sites, whether pre-
written or specially prepared for the student concerned
b. submission of a paper written by another person, either by a fellow student or a person
who is not a member of the university;
3. duplication (of one’s own work) of the same or almost identical work for more than one module;
4. the act of copying or paraphrasing a paper from a source text, whether in manuscript, printed or
electronic form, without appropriate acknowledgement (this includes quoting directly from
another source with a reference but without quotation marks);
5. submission of another student’s work, whether with or without that student’s knowledge or
consent;
6. Directly quoting from model solutions/answers made available in previous years;
7. cheating in class tests, e.g.
a. when a candidate communicates, or attempts to communicate, with a fellow candidate or
individual who is neither an invigilator or member of staff
b. copies, or attempts to copy from a fellow candidate
c. attempts to introduce or consult during the examination any unauthorised printed or written
material, or electronic calculating, information storage device, mobile phones or other
communication device
d. personates or allows himself or herself to be impersonated.
8. Fabrication of results occurs when a student claims to have carried out tests, experiments or
observations that have not taken place or presents results not supported by the evidence with the
object of obtaining an unfair advantage.
These definitions apply to work in whatever format it is presented, including written work, online
submissions, groupwork and oral presentations.
20. Attendance Policy
Every student must attend 80% of the lectures/seminars delivered in this course and 80% of the
practical/laboratory work prescribed for the respective courses. The students falling short of required
percentage of attendance of lectures/seminars/practical/laboratory work, etc., shall not be allowed to
appear in the terminal examination of this course and shall be treated as having failed this course.

You might also like