Cse 408
Cse 408
Course Code CSE408 Course Category Course Title DESIGN AND ANALYSIS OF ALGORITHMS Courses with Placement focus Course Planner 15691::Surmeet Kaur Lectures 3.0 Tutorials Practicals Credits 0.0 0.0 3.0
TextBooks Sr No T-1 Title Introduction to Algorithms Reference Books Sr No R-1 R-2 R-3 R-4 Other Reading Sr No OR-1 OR-2 OR-3 OR-4 OR-5 Journals articles as Compulsary reading (specific articles, complete reference) http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/Complexity/npComplete.htm (NP Completeness) , http://delab.csd.auth.gr/~manolopo/Design/ch03.ppt (Brute Force String Matching) , http://www.personal.kent.edu/~rmuhamma/Algorithms/algorithm.html (Concepts of Design of Algorithms) , http://www.csc.villanova.edu/~map/8301/lec03.pdf , http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/Sorting/quickSort.htmdevices , Title The Design and Analysis Of Computer Algorithms Introduction to the Design and Analysis of Algorithm Computer Algorithms - Introduction to Design and Analysis Fundamentals of Computer Algorithms Author A.V.Aho, J.E. Hopcroft and J.D.Ullman Anany Levitin Sara Baase and Allen Van Gelder Horowitz, S. Sahni Edition 2nd 2nd 2nd 2nd Year 2007 2003 2006 2005 Publisher Name Pearson Education Pearson Education Pearson Education Galgotia Publishers Author Edition Year 2007 Publisher Name Thomas Telford Publishing C.E. Leiserson, R.L. Rivest 3rd and C. Stein
Relevant Websites Sr No RW-1 RW-2 RW-3 (Web address) (only if relevant to the course) http://courses.ncsu.edu/ma103/common/media/05/MA103Lct25.mp4 http://optlab-server.sce.carleton.ca/POAnimations2007/DijkstrasAlgo.html http://www.cse.yorku.ca/~aaw/Zambito/TSP_L/Web/TSPStart.html Salient Features Prims and Kruskals algorithms Dijkstra's shortest path Travelling Salesman Problem
7 6 2
Week 1
Lecture 1
Introduction to Basic Concepts of T-1:Chapter1(1.1and Algorithms(Notion of Algorithm , 1.2) Fundamentals of Algorithmic R-1:Chapter1(1.2) Solving , Important Problem types R-3:Chapter3(3.1) , Fundamentals of the Analysis Framework , Asymptotic Notations and Basic Efficiency Classes.) Introduction to Basic Concepts of T-1:Chapter1(1.1and Algorithms(Notion of Algorithm , 1.2) Fundamentals of Algorithmic R-1:Chapter1(1.2) Solving , Important Problem types R-3:Chapter3(3.1) , Fundamentals of the Analysis Framework , Asymptotic Notations and Basic Efficiency Classes.) Introduction to Basic Concepts of T-1:Chapter1(1.1and Algorithms(Notion of Algorithm , 1.2) Fundamentals of Algorithmic R-1:Chapter1(1.2) Solving , Important Problem types R-3:Chapter3(3.1) , Fundamentals of the Analysis Framework , Asymptotic Notations and Basic Efficiency Classes.) Introduction to Basic Concepts of T-1:Chapter1(1.1and Algorithms(Notion of Algorithm , 1.2) Fundamentals of Algorithmic R-1:Chapter1(1.2) Solving , Important Problem types R-3:Chapter3(3.1) , Fundamentals of the Analysis Framework , Asymptotic Notations and Basic Efficiency Classes.) Mathematical Analysis of NonT-1:Chapter4(4.1 and recursive and Recursive Algorithm 4.3 and 4.5) (Fibonacci Numbers, Solving R-1:Chapter2(2.5 recurrences using master method, and 2.6) substitution and iteration method.) OR-4
Basic knowledge about Would be knowing algorithms and concepts about fundamentals of of complexities of algorithms algorithms
Lecture 2
Basic knowledge about Would be knowing algorithms and concepts about fundamentals of of complexities of algorithms algorithms
Slides
Lecture 3
Basic knowledge about Would be knowing algorithms and concepts about fundamentals of of complexities of algorithms algorithms
Slides
Week 2
Lecture 4
Basic knowledge about Would be knowing algorithms and concepts about fundamentals of of complexities of algorithms algorithms
Slides
Lecture 5
Slides
Week 2
Lecture 6
Mathematical Analysis of NonT-1:Chapter4(4.1 and recursive and Recursive Algorithm 4.3 and 4.5) (Fibonacci Numbers, Solving R-1:Chapter2(2.5 recurrences using master method, and 2.6) substitution and iteration method.) Mathematical Analysis of NonT-1:Chapter4(4.1 and recursive and Recursive Algorithm 4.3 and 4.5) (Fibonacci Numbers, Solving R-1:Chapter2(2.5 recurrences using master method, and 2.6) substitution and iteration method.) Mathematical Analysis of NonT-1:Chapter4(4.1 and recursive and Recursive Algorithm 4.3 and 4.5) (Fibonacci Numbers, Solving R-1:Chapter2(2.5 recurrences using master method, and 2.6) substitution and iteration method.) Mathematical Analysis of NonT-1:Chapter4(4.1 and recursive and Recursive Algorithm 4.3 and 4.5) (Fibonacci Numbers, Solving R-1:Chapter2(2.5 recurrences using master method, and 2.6) substitution and iteration method.) Sorting and order statics(Heap sort, T-1:Chapter 6(6.3 Quick sort and sorting in linear and 6.4) Chapter time.) 7(7.1 and 7.2 and 7.3 and 7.4) Chapter 8(8.1 and 8.2 and 8.3 and 8.4) Sorting and order statics(Heap sort, T-1:Chapter 6(6.3 Quick sort and sorting in linear and 6.4) Chapter time.) 7(7.1 and 7.2 and 7.3 and 7.4) Chapter 8(8.1 and 8.2 and 8.3 and 8.4) Sorting and order statics(Heap sort, T-1:Chapter 6(6.3 Quick sort and sorting in linear and 6.4) Chapter time.) 7(7.1 and 7.2 and 7.3 and 7.4) Chapter 8(8.1 and 8.2 and 8.3 and 8.4) Sorting and order statics(Heap sort, T-1:Chapter 6(6.3 Quick sort and sorting in linear and 6.4) Chapter time.) 7(7.1 and 7.2 and 7.3 and 7.4) Chapter 8(8.1 and 8.2 and 8.3 and 8.4)
OR-4
Slides
Week 3
Lecture 7
OR-4
Slides
Lecture 8
OR-4
Slides
Lecture 9
OR-4
Slides
Week 4
Test 1 Different sorting techniques Would be learning the Slides method to sort the given list by using different methods
Lecture 12
OR-5
Would be learning the Slides method to sort the given list by using different methods
Week 5
Lecture 13
OR-5
Would be learning the Slides method to sort the given list by using different methods
Lecture 14
OR-5
Would be learning the Slides method to sort the given list by using different methods
Week 5
Lecture 15
Data Structures(Elementary data structures, Hash tables, BST, Red Black trees.)
T-1:Chapter10(10.1 and 10.2 and 10.3 and 10.4) Chapter 11(11.1 and 11.2 and 11.3) Chapter 12(12.1 and 12.2) T-1:Chapter10(10.1 and 10.2 and 10.3 and 10.4) Chapter 11(11.1 and 11.2 and 11.3) Chapter 12(12.1 and 12.2) T-1:Chapter10(10.1 and 10.2 and 10.3 and 10.4) Chapter 11(11.1 and 11.2 and 11.3) Chapter 12(12.1 and 12.2)
Different operations on Binary Search trees and basics of stacks and linked lists and hashing
Would be knowing the Slides fundamentals of red blacks trees and BST and Hashing concept
Week 6
Lecture 16
Data Structures(Elementary data structures, Hash tables, BST, Red Black trees.)
Different operations on Binary Search trees and basics of stacks and linked lists and hashing
Would be knowing the Slides fundamentals of red blacks trees and BST and Hashing concept
Lecture 17
Data Structures(Elementary data structures, Hash tables, BST, Red Black trees.)
Different operations on Binary Search trees and basics of stacks and linked lists and hashing
Would be knowing the Slides fundamentals of red blacks trees and BST and Hashing concept
Lecture 18 Week 7 Lecture 19 Advanced Data Structures (Binomial Heap ,Fibonacci heap.) T-1:Chapter19(19.1 and 19.2) Chapter 20(20.1 and 20.2 and 20.3) Chapter 23(23.1) T-1:Chapter19(19.1 and 19.2) Chapter 20(20.1 and 20.2 and 20.3) Chapter 23(23.1) T-1:Chapter19(19.1 and 19.2) Chapter 20(20.1 and 20.2 and 20.3) Chapter 23(23.1)
Test 2 Structure of Fibonacci heaps Would be knowing about Advanced Data Structures Slides
Lecture 20
Slides
Lecture 21
Slides
MID-TERM
Week 8 Lecture 22 Advanced design and analysis techniques(Dynamic Programming.) Advanced design and analysis techniques(Dynamic Programming.) T-1:Chapter 15(15.1 and 15.2 and 15.3) Chapter 16(16.1) T-1:Chapter 15(15.1 and 15.2 and 15.3) Chapter 16(16.1) Assembly Line Would be knowing the Slides scheduling,Matrix Chain basics of some Multiplication Dynamic Algorithms Assembly Line Would be knowing the Slides scheduling,Matrix Chain basics of some Multiplication Dynamic Algorithms
Lecture 23
Week 8
Lecture 24
Advanced design and analysis techniques(Dynamic Programming.) Advanced design and analysis techniques(2)(Greedy techniques, Brute force techniques, amortized analysis.)
T-1:Chapter 15(15.1 and 15.2 and 15.3) Chapter 16(16.1) T-1:Chapter 17(17.1 and 17.2 and 17.3 and 17.4) Chapter 16(16.2 and 16.3 and 16.4) T-1:Chapter 17(17.1 and 17.2 and 17.3 and 17.4) Chapter 16(16.2 and 16.3 and 16.4) T-1:Chapter 17(17.1 and 17.2 and 17.3 and 17.4) Chapter 16(16.2 and 16.3 and 16.4) T-1:Chapter 17(17.1 and 17.2 and 17.3 and 17.4) Chapter 16(16.2 and 16.3 and 16.4) T-1:Chapter 17(17.1 and 17.2 and 17.3 and 17.4) Chapter 16(16.2 and 16.3 and 16.4) T-1:Chapter 23(23.2) Chapter 24(24.1 and 24.2 and 24.3) Chapter 25(25.1 and 25.2) Chapter 26(26.1 and 26.2) T-1:Chapter 23(23.2) Chapter 24(24.1 and 24.2 and 24.3) Chapter 25(25.1 and 25.2) Chapter 26(26.1 and 26.2) RW-1 RW-2
Assembly Line Would be knowing the Slides scheduling,Matrix Chain basics of some Multiplication Dynamic Algorithms Elements of Greedy Strategy,A task scheduling problem Would be knowing Slides about potential method and aggregate analysis
Week 9
Lecture 25
Lecture 26
Advanced design and analysis techniques(2)(Greedy techniques, Brute force techniques, amortized analysis.)
Lecture 27
Advanced design and analysis techniques(2)(Greedy techniques, Brute force techniques, amortized analysis.)
Week 10
Lecture 28
Advanced design and analysis techniques(2)(Greedy techniques, Brute force techniques, amortized analysis.)
Lecture 29
Advanced design and analysis techniques(2)(Greedy techniques, Brute force techniques, amortized analysis.)
Lecture 30
Graph Algorithm(Minimum Spanning trees,Single source and all source shortest path algorithm,Maximum flow)
Minimum Spanning Tree Would be knowing and Shortest path about graphs Algorithms
Slides
Week 11
Lecture 31
Graph Algorithm(Minimum Spanning trees,Single source and all source shortest path algorithm,Maximum flow)
RW-1 RW-2
Minimum Spanning Tree Would be knowing and Shortest path about graphs Algorithms
Slides
Week 11
Lecture 32
Graph Algorithm(Minimum Spanning trees,Single source and all source shortest path algorithm,Maximum flow)
T-1:Chapter 23(23.2) Chapter 24(24.1 and 24.2 and 24.3) Chapter 25(25.1 and 25.2) Chapter 26(26.1 and 26.2)
RW-1 RW-2
Minimum Spanning Tree Would be knowing and Shortest path about graphs Algorithms
Slides
Lecture 33 Week 12 Lecture 34 String Matching Techniques(Brute T-1:Chapter 32(32.2 force, Robin Karp, Bellman and 32.4) Ford,KMP) String Matching Techniques(Brute T-1:Chapter 32(32.2 force, Robin Karp, Bellman and 32.4) Ford,KMP) String Matching Techniques(Brute T-1:Chapter 32(32.2 force, Robin Karp, Bellman and 32.4) Ford,KMP) Problem classes P(NP, NP-hard and NP-complete, deterministic and non deterministic polynomial time algorithms) Problem classes P(NP, NP-hard and NP-complete, deterministic and non deterministic polynomial time algorithms) Problem classes P(NP, NP-hard and NP-complete, deterministic and non deterministic polynomial time algorithms) T-1:Chapter 34(34.5) R-1:Chapter10(10.1 and 10.2) T-1:Chapter 34(34.5) R-1:Chapter10(10.1 and 10.2) T-1:Chapter 34(34.5) R-1:Chapter10(10.1 and 10.2) OR-2
Quiz 1 Some string matching techniques Some string matching techniques Some string matching techniques Distinction between Deterministic and Non Deterministic Algorithms Distinction between Deterministic and Non Deterministic Algorithms Distinction between Deterministic and Non Deterministic Algorithms Would be knowing the Slides methods to match two given strings Would be knowing the Slides methods to match two given strings Would be knowing the Slides methods to match two given strings Would be leaning about Slides NP complete problems
Lecture 35
OR-2
Lecture 36
OR-2
Week 13
Lecture 37
OR-1
Lecture 38
OR-1
Lecture 39
OR-1
SPILL OVER
Week 14 Lecture 40 T-1:Chapter 35 Approximation algorithms for some NPcomplete Approximation algorithms for some NPcomplete Some more NP complete problems Slides
Lecture 41
T-1:Chapter 35
Slides
Quiz 1
To pursue the WEEK 1 TO WEEK 11 students practicing the objective type questions related to placement activities Advanced Data Structure Fundamentals of algorithm WEEK 1 TO WEEK 6
Test 2
Individual
Step by step evaluation of selected questions Step by Step evaluation of selected questions
5/6
Test 1
WEEK1 TO WEEK4
Individual
3/4