You are on page 1of 13

MERI - CET DEPTT.

OF COMPUTER SCIENCE

TEACHING METHODLOGY
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

Lecturer: Ms. Meenakshi


COURSE OBJECTIVE

Course

To provide knowledge of different types of algorithm and their time complexity so that problem can be solved in minimum effort and time. METHODOLOGY The pedagogy will be lectures, tutorials, assignments, class work, seminars, project etc. ACHIEVEMENTS 1. Basic knowledge of algorithms. 2. Complexities of different algorithms. 3. Backtracking and branch & bound method understanding. EVALUATION Besides the semester end examination, the students will be continuously assessed during the course on following basis: S. no. 1 2 3 4 Description Mid term examinations Internal assessment (Assignment + Attendance) Class performance End semester examination Total Marks distribution 20 20 10 100 150

Syllabus as per M. D. University Session: 2011-2012


B.TECH (CSE) - SEMESTER VII SUBJECT: ANALYSIS AND DESIGN OF ALGORITHMS SUBJECT CODE: CSE-305 E

Unit-1: Brief Review of Graphs, Sets and disjoint sets, union, sorting and searching algorithms and their analysis interms of space and time complexity. Unit-2: Divide and Conquer: General method, binary search, merge sort, qick sort, selection sort, Strassensmatrix multiplication algorithms and analysis of algorithms for these problems. Unit-3: Greedy Method: General method, knapsack problem, job sequencing with dead lines, minimum spanningtrees, single souce paths and analysis of these problems. Unit-4: Dynamic Programming: General method, optimal binary search trees, O/I knapsack, the travelingsalesperson problem. Unit-5: Back Tracking: General method, 8 queens problem, graph colouring, Hamiltonian cycles, analysis of these problems. Unit-6: Branch and Bound: Method, O/I knapsack and traveling salesperson problem, efficiency considerations.Techniques for algebraic problems, some lower bounds on parallel computations. Unit-7: NP Hard and NP Complete Problems: Basic concepts, Cooks theorem, NP hard graph and NP schedulingproblems some simplified NP hard problems.

Text Books: Fundamental of Computer algorithms, Ellis Horowitz and Sartaj Sahni, 1978, Galgotia Publ., Introduction To Algorithms, Thomas H Cormen, Charles E Leiserson And Ronald L Rivest: 1990, TMH Reference Books: The Design and Analysis of Computer Algorithm, Aho A.V. Hopcroft J.E., 1974, Addison Wesley. Algorithms-The Construction, Proof and Analysis of Programs, Berlion, P.Bizard, P., 1986. Johan Wiley &Sons, Writing Efficient Programs, Bentley, J.L., PHI Introduction to Design and Analysis of Algorithm, Goodman, S.E. & Hedetnieni, 1997, MGH. Introduction to Computers Science- An algorithms approach , Jean Paul Trembley, Richard B.Bunt, 2002,T.M.H. Fundamentals of Algorithms: The Art of Computer Programming Voll, Knuth, D.E.: 1985, Naresh Publ. Note: Eight questions will be set in all by the examiners taking at least one question from each unit. Students will be requiredto attempt five questions in all.

TEACHING PLAN
Subject: ANALYSIS AND DESIGN OF ALGORITHMS CSE Subject Code: CSE-305 E Semester: V Branch:

Total No. of Lectures: 50 Detailed Course Outline References No.Of Lecture s 7

Unit1: Brief Review of Graphs, Sets and Disjoint Sets, Union, Sorting and searching algorithm and their analysis in terms of space and time complexity Unit-2: Divide and Conquer: General method, binary search, merge sort, quick sort, Selection sort, Strassens matrix multiplication algorithms and analysis of algorithms for these problems.

CH-1,2 Sartaj Sahni

Chapter 3 Sartaj sahni Ch-2 Thomas H .cormen Chapter-4 Sartaj Sahni Chapter -4,6 Thomas H.cormen, Brassard and Brately Chapter-5 Sartaj Sahni Chapter -4 Thomas H.cormen Chapter-7 Sartaj Sahni

Unit-3:Greedy method: General method, Knapsack problem, Job sequencing with dead lines, minimum spanning trees, Single source path and analysis of these problems .

Unit-4: Dynamic Programming: General method, Optimal binary search trees, I/O knapsack, The travelling sales person problem. Unit-5: Back Tracking: General method, 8 Queens problem, graph coloring, Hamiltonian cycles, Analysis of these problems.

Unit6:Branch and Bound: Method, I/O Knapsack and travelling sales person problem, Efficiency considerations, Techniques for algebraic problems, Some lower bounds on parallel computations.

Chapter -8,10 Sartaj Sahni

Unit 7: NP Hard and NP Complete Problems: Basic concepts, Cooks theorem, NP Hard Graph and NP Scheduling Problems, Some simplified NP Hard problems. Total No. of Lectures

Chapter-11 Sartaj Sahni Chapter-7 Thomas H.cormen

50

Text Books:
Fundamental of Computer algorithms, Ellis Horowitz and Sartaj Sahni, 1978, Galgotia Publ., Introduction To Algorithms, Thomas H Cormen, Charles E Leiserson And Ronald L Rivest: 1990, TMH

Reference Books:
The Design and Analysis of Computer Algorithm, Aho A.V. Hopcroft J.E., 1974, Addison Wesley. Algorithms-The Construction, Proof and Analysis of Programs, Berlion, P.Bizard, P.,1986.Johan Wiley & Sons, Writing Efficient Programs, Bentley, J.L., PHI Introduction to Design and Analysis of Algorithm, Goodman, S.E. & Hedetnieni, 1997,MGH. Introduction to Computers Science- An algorithms approach , Jean Paul Trembley, Richard B. Bunt, 2002, T.M.H. Fundamentals of Algorithms: The Art of Computer Programming Voll, Knuth, D.E.:1985, Naresh Publ.

SEMINAR DETAILS
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

S. No. 1 2 3 4 5 6

Topic Sorting and searching algorithm Divide and Conquer Greedy method Dynamic Programming Back Tracking, Branch and bound NP Hard and NP Complete Problems

Group [Rollno wise] 1-6 7-12 13-18 19-24 25-30 31- up to last roll no.

Proposed Date

Aug 27, 11 Sep 03, 11 Sep 10, 11 Sep 17, 11 Sep 24, 11 Oct 1, 11

ASSIGNMENT DETAILS
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

S. No. 1

Assignment

Assignment giving dates

Assignment Collection date

Assignment check/discussio n date

Assignment 1 Assignment 2 Assignment 3 Assignment 4 Assignment 5 Assignment 6

Aug 09, 11 Aug 23, 11 Sep 06, 11 Sep 20, 11 Oct 04, 11 Oct 18, 11

Aug 16, 11 Aug 30, 11 Sep 13, 11 Sep 27, 11 Oct 11, 11 Oct 25, 11

Aug 23, 11 Sep 06, 11 Sep 20, 11 Oct 04, 11 Oct 18, 11 Nov 01, 11

MERI - CET DEPTT. OF COMPUTER SCIENCE

ASSIGNMENT 1
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

Submitted to: Ms. Meenakshi


Assignment giving date Assignment Collection date Assignment check/discussion date

Aug 09, 11

Aug 16, 11

Aug 23, 11

Q.1 Write and explain different types of asymptotic notations with suitable example. Q.2 What is recurrence relation? Solve the following relation by recursive method T(n) = 2T (n/2 + 17) + n Q.3 Explain the algorithm for quick sort and compare time complexity with Heap sort. Q.4 Explain hear sort with its complexity ? what is running time of heap sort when list is already sorted sort the following list by using heap sort : 14,8,15,6,3,20,22,28,10,40 Q.5 Explain Adjacency List and Adjacency matrix representation of graph. Q.6 What are sets? Discuss different data representations for sets. Also define disjoint sets, union and find operations on sets. Q.7 Give recursive version of binary search algorithm. Also discuss its efficiency in terms of time and space. Q.8 What is recurrence relation? Explain method for solving recurrences. Q.9 Explain union algorithm with weighted rule.

Q.10 Explain algorithm of merge sort and compare its space and time complexity with quick sort.

MERI - CET DEPTT. OF COMPUTER SCIENCE

ASSIGNMENT - 2
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

to: Ms. Meenakshi


Assignment giving date Assignment Collection date Assignment check/discussion date

Submitted

Aug 23, 11 Q.1 Q.2

Aug 30, 11

Sep 06, 11

Q.3 Q.4 Q.5 Q.6 Q.7 Q.8 Q.9

Explain the algorithm which runs in o(n) time when the list is already sorted. Find the solution for following fractional knapsack problem using Greedy method : N = 3 m = 50 Wi = (10, 20, 30) Pi = (60,100,120) Consider the knapsack instance: N =4, Wi = (2, 4, 6 ,9) Pi = (10,10,12,18) M = 15 Explain kruskal algorithm to find minimum spanning tree from graph with example and derive its complexity. What is divide conquer strategy? Design a recursive binary search algorithm using divide and conquer strategy . Discuss divide and conquer programming techniques. Also explain its flow of control with the help of control abstraction. Discuss and give Strassens multiplication algorithm. Write and explain prims algorithm to find a minimum spanning tree from a graph with example and derive its complexity. Write short note on binary search tree.

Q.10 Write and explain kruskals algorithm to find the minimum spanning tree from a graph with example and derive its complexity.

MERI - CET DEPTT. OF COMPUTER SCIENCE

ASSIGNMENT - 3
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

Submitted to: Ms. Meenakshi


Assignment giving date Assignment Collection date Assignment check/discussion date

Sep 06, 11

Sep 13, 11

Sep 20, 11

Q1. Q2. Q3. Q4. Q.5 Q.6


Q.7

What do you mean by Greedy method? How this method can be applied to solve the Knapsack problem? Justify. What is Dynamic Programming? Illustrate its significance through suitable example. What do you mean by analysis of algorithms? How is it performed? Illustrate. What is spanning tree? How Prims algorithm results in minimumcost spanning tree? Illustrate. Differentiate between Greedy and dynamic programming method with a suitable example. Write and explain algorithm for finding transitive coloring using dynamic approach with suitable example and derive its time complexity. What is Travelling Salesman problem? How the problem can be solved? Illustrate.

What is meant by Graph coloring? Discuss the significance of 4color conjecture Q.9 What is 8 queens problem? Discuss its significance. Q10. What are Hamiltonian graphs? Discuss their significance in the analysis of algorithms.
Q.8

MERI - CET DEPTT. OF COMPUTER SCIENCE

ASSIGNMENT - 4
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

Submitted to: Ms. Meenakshi


Assignment giving date Assignment Collection date Assignment check/discussion date

Sep 20, 11 Q1. Q.2

Sep 27, 11

Oct 04, 11

Explain Hashing? Where and how is it useful? What is 0/1 Knapsack problem? Write down an algorithm for its solution using backtracking. Q3. What do you mean by Binary search? Determine its complexity. Write an algorithm for binary search technique. Q4. Compare the complexity of quick sort and selection sort algorithms. Q5. What is Strassens matrix multiplication algorithm? Determine its complexity. Q6. What is heap sort technique? Comment upon its complexity as well as its usefulness.

Q7.

Differentiate between stack and queue data structures. Compare the complexity of algorithms implementing stacks and queue data structures. Q.8 Differentiate backtracking and branch and bound. Q.9 Explain backtracking. Write algorithm for n queens problem and analyze the time complexity for the same. Q.10 Give an algorithm for graph coloring problem using backtracking and analyze the time complexity for the same.

MERI - CET DEPTT. OF COMPUTER SCIENCE

ASSIGNMENT - 5
Subject: ANALYSIS AND DESIGN OF ALGORITHMS Branch: CSE Subject Code: CSE-305 E Semester: V

Submitted to: Ms. Meenakshi


Assignment giving date Assignment Collection date Assignment check/discussion date

Oct 04, 11 Q1. Q2. Q3. Q4. Q.5

Oct 11, 11

Oct 18, 11

What is meant by NP-scheduling problems? Show that the job sequencing with deadlines problems in NP hard. What do you mean by algebraic problems? Discuss some important technique for such problems What do you understand by parallel computing? Discuss some lower bounds on parallel computation. What is Cooks theorem? What are the important simplifying assumptions? Provide its proof and discuss the significance of this theorem. Explain the following :

Q.6

Q.8 tree. Q.9 Explain NP hard graph .Write its significance also. Q.10 Discuss Branch and Bound strategy by solving travelling salesman problem for any graph and analyze the time complexity for the same.

a). Huffman codes. b). Adjacency list and Adjacency matrix representation of graph. c). NP complete problem. Consider the knapsack instance : Number of object n = 3with corresponding weight and profit as Wi = (2,3,4,) Pi = (1,2,5) The knapsack capacity m= 6. Using dynamic approach find the solution for this instance of O/I knapsack problem Explain fixed and vatiable sizes touple formation state space

You might also like