CS3401 Allgorithmscourse Plan
CS3401 Allgorithmscourse Plan
NELLIANDAVARINSTITUTE OF TECHNOLOGY
PUDHUPALAYAM, ARIYALUR-621704
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Revision:
COURSE PLAN
Date:
PROGRAM OUTCOMES:
PART-II
CS3401 ALGORITHMS
Ref:
NELLIANDAVARINSTITUTE OF TECHNOLOGY
PUDHUPALAYAM, ARIYALUR-621704
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Revision:
COURSE PLAN
Date:
PROGRAM OUTCOMES:
PART-II
CS3401 ALGORITHMS
UNIT I INTRODUCTION 9
Algorithm analysis: Time and space complexity - Asymptotic Notations and its properties Best case,
Worst case and average case analysis – Recurrence relation: substitution method - Lower bounds –
searching: linear search, binary search and Interpolation Search, Pattern search: The naïve string-
matching algorithm - Rabin-Karp algorithm - Knuth-Morris-Pratt algorithm. Sorting: Insertion sort –
heap sort
UNIT II GRAPH ALGORITHM
9
Graph algorithms: Representations of graphs - Graph traversal: DFS – BFS - applications
- Connectivity, strong connectivity, bi-connectivity - Minimum spanning tree: Kruskal’s
and Prim’s algorithm- Shortest path: Bellman-Ford algorithm - Dijkstra’s algorithm -
Floyd-Warshall algorithm Network flow: Flow networks - Ford-Fulkerson method –
Matching: Maximum bipartite matching
UNIT III ALGORITHM DESIGN TECHNIQUES 9
Divide and Conquer methodology: Finding maximum and minimum - Merge sort - Quick sort
Dynamic programming: Elements of dynamic programming — Matrix-chain multiplication -
Multi stage graph — Optimal Binary Search Trees. Greedy Technique: Elements of the
greedy strategy - Activity-selection problem –- Optimal Merge pattern — Huffman Trees.
UNITIV STATE SPACE SEARCH ALGORITHMS
Backtracking: n-Queens problem - Hamiltonian Circuit Problem - Subset Sum Problem
– Graph colouring problem Branch and Bound: Solving 15-Puzzle problem -
Assignment problem - Knapsack Problem - Travelling Salesman Problem
UNIT V NP-COMPLETE AND APPROXIMATION ALGORITHM
9
Distributed Tractable and intractable problems: Polynomial time algorithms – Venn
diagram representation - NP- algorithms - NP-hardness and NP-completeness – Bin
Packing problem - Problem reduction: TSP – 3- CNF problem. Approximation
Algorithms: TSP - Randomized Algorithms: concept and application - primality testing -
randomized quick sort - Finding kth smallest number
COURSEOUTCOMES:
TEXTBOOKS:
T1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein,
"Introduction to Algorithms", 3rd Edition, Prentice Hall of India, 2009.
T2. Ellis Horowitz, Sartaj Sahni, Sanguthevar Rajasekaran “Computer Algorithms/C+
+” Orient Blackswan, 2nd Edition, 2019.
REFERENCES
R1. Anany Levitin, “Introduction to the Design and Analysis of Algorithms”, 3rd Edition, Pearson
Education, 2012.
R2. Alfred V. Aho, John E. Hopcroft and Jeffrey D. Ullman, "Data Structures and Algorithms",
Reprint Edition, Pearson Education, 2006.
R3. S. Sridhar, “Design and Analysis of Algorithms”, Oxford university press, 2014.
PART-III
Hr. Syllabus topics Planned Actual Teaching Book & page Reason Remark
No date date methodolo for and
gy & Book Page No deviation signature
teaching of the
aid used HOD
with date
UNITI INTRODUCTION
1. Time and space complexity 6/2/23 6/2/2 L & CB
3 T1
BFS, applications
PART-IV
Hr. Syllabus topics Planned Actual Teaching Reason Remark
No date date methodology for and
& teaching deviation signature
aid used of the
HOD
with date
50. Implement Linear Search. LAB
Determine the time required
to search for an element.
51. Repeat the experiment for LAB
different values of n
52. The number of elements in LAB
the list to be searched and
plot a graph of the time
taken versus n.
53. Implement recursive Binary LAB
Search. Determine the time
required to search an element
54. . Repeat the experiment for LAB
different values of n
55. The number of elements in LAB
the list to be searched and
plot a graph of the time taken
versus n.
56. Develop a program to LAB
implement graph traversal
using Breadth First Search
57. Develop a program to LAB
implement graph traversal
using Depth First Search
58. Develop a program to LAB
implement graph traversal
using Depth First Search
59. From a given vertex in a LAB
weighted connected graph,
develop a program to find
the shortest paths to other
vertices using Dijkstra’s
algorithm.
60. From a given vertex in a LAB
weighted connected graph,
develop a program to find
the shortest paths to other
vertices using Dijkstra’s
algorithm.
61. Find the minimum cost LAB
spanning tree of a given
undirected graph using
Prim’s algorithm.
62. Find the minimum cost LAB
spanning tree of a given
undirected graph using
Prim’s algorithm.
63. Implement Floyd’s LAB
algorithm for the All-
Pairs- Shortest-Paths
problem.
64. Implement Floyd’s LAB
algorithm for the All-
Pairs- Shortest-Paths
problem.
65. Compute the transitive LAB
closure of a given directed
graph using Warshall's
algorithm.
66. Compute the transitive LAB
closure of a given directed
graph using Warshall's
algorithm
67. Develop a program to find LAB
out the maximum numbers in
a given list of n numbers
using the divide and conquer
technique.
68. Develop a program to find LAB
out the minimum numbers in
a given list of n numbers
using the divide and conquer
technique.
69. Implement Merge sort LAB
method to sort an array of
elements and determine the
time required to sort.
70. Repeat the experiment for LAB
different values of n,
71. The number of elements in LAB
the list to be sorted and plot a
graph of the time taken
versus n.
72. Implement Quick sort LAB
method to sort an array of
elements and determine the
time required to sort.
73. Repeat the experiment for LAB
different values of n,
74. The number of elements in LAB
the list to be sorted and plot a
graph of the time taken
75. Implement N Queens LAB
problem using Backtracking.
76. Implement any scheme to LAB
find the optimal solution for
the Traveling Salesperson
problem
77. Solve the traveling LAB
Salesperson problem instance
using any approximation
algorithm
78. Determine the error in the LAB
approximation of traveling
Salesperson problem
79. Implement randomized LAB
algorithms for finding the kth
smallest number.
NELLIANDAVARINSTIT Ref:
PART-IV
A.COURSE ASSESSMENT MATRIX
Cour P P PO3 PO4 PO5 PO6 PO7 PO8 PO10 PO10 PO11 PO12
se O O
Outc 1 2
omes
CO1 2 2 1 - 2 2 1 1 2 1 1 2
CO2 2 3 3 3 2 1 1 1 2 2 - -
CO3 2 2 2 1 1 1 - - - 1 - -
CO4
CO5
CO1 CO CO CO CO JUSTIFICATION
2 3 4 5
PO1 3 3 3 3 3
PO2 2 2 2 2 2
PSO 1 1 1 1 1
1