0% found this document useful (0 votes)
45 views3 pages

BCSE204L P Syllabus

The document outlines the syllabus for the course BCSE204L - Design and Analysis of Algorithms. The course has 8 modules that cover various algorithm design paradigms like greedy algorithms, dynamic programming, divide and conquer techniques, graph algorithms, string matching algorithms, geometric algorithms, randomized algorithms, and complexity analysis. The course aims to teach students how to analyze algorithms for complexity, design efficient algorithms, and apply algorithm design strategies to solve real-world problems. The syllabus also includes the course objectives, outcomes, module topics, textbook, and mode of evaluation.

Uploaded by

hxpaxton
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views3 pages

BCSE204L P Syllabus

The document outlines the syllabus for the course BCSE204L - Design and Analysis of Algorithms. The course has 8 modules that cover various algorithm design paradigms like greedy algorithms, dynamic programming, divide and conquer techniques, graph algorithms, string matching algorithms, geometric algorithms, randomized algorithms, and complexity analysis. The course aims to teach students how to analyze algorithms for complexity, design efficient algorithms, and apply algorithm design strategies to solve real-world problems. The syllabus also includes the course objectives, outcomes, module topics, textbook, and mode of evaluation.

Uploaded by

hxpaxton
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Agenda Item 65/39 - Annexure - 35

BCSE204L Design and Analysis of Algorithms L T P C


3 0 0 3
Pre-requisite NIL Syllabus version
1.0
Course Objectives
1. To provide mathematical foundations for analyzing the complexity of the algorithms
2. To impart the knowledge on various design strategies that can help in solving the real world
problems effectively
3. To synthesize efficient algorithms in various engineering design situations

Course Outcomes
On completion of this course, student should be able to:
1. Apply the mathematical tools to analyze and derive the running time of the algorithms
2. Demonstrate the major algorithm design paradigms.
3. Explain major graph algorithms, string matching and geometric algorithms along with their
analysis.
4. Articulating Randomized Algorithms.
5. Explain the hardness of real-world problems with respect to algorithmic efficiency and learning to
cope with it.

Module:1 Design Paradigms: Greedy, Divide and Conquer 6 hours


Techniques
Overview and Importance of Algorithms - Stages of algorithm development: Describing the problem,
Identifying a suitable technique, Design of an algorithm, Derive Time Complexity, Proof of
Correctness of the algorithm, Illustration of Design Stages - Greedy techniques: Fractional Knapsack
Problem, and Huffman coding - Divide and Conquer: Maximum Subarray, Karatsuba faster integer
multiplication algorithm.
Module:2 Design Paradigms: Dynamic Programming, Backtracking 10 hours
and Branch & Bound Techniques
Dynamic programming: Assembly Line Scheduling, Matrix Chain Multiplication, Longest Common
Subsequence, 0-1 Knapsack, TSP- Backtracking: N-Queens problem, Subset Sum, Graph Coloring-
Branch & Bound: LIFO-BB and FIFO BB methods: Job Selection problem, 0-1 Knapsack Problem

Module:3 String Matching Algorithms 5 hours


Naïve String-matching Algorithms, KMP algorithm, Rabin-Karp Algorithm, Suffix Trees.
Module:4 Graph Algorithms 6 hours
All pair shortest path: Bellman Ford Algorithm, Floyd-Warshall Algorithm - Network Flows: Flow
Networks, Maximum Flows: Ford-Fulkerson, Edmond-Karp, Push Re-label Algorithm – Application of
Max Flow to maximum matching problem
Module:5 Geometric Algorithms 4 hours
Line Segments: Properties, Intersection, sweeping lines - Convex Hull finding algorithms: Graham’s
Scan, Jarvis’ March Algorithm.
Module:6 Randomized algorithms 5 hours
Randomized quick sort - The hiring problem - Finding the global Minimum Cut.
Module:7 Classes of Complexity and Approximation 7 hours
Algorithms
The Class P - The Class NP - Reducibility and NP-completeness – SAT (Problem Definition and
statement), 3SAT, Independent Set, Clique, Approximation Algorithm – Vertex Cover, Set Cover and
Travelling salesman
Module:8 Contemporary Issues 2 hours

Total Lecture hours: 45 hours

Text Book
1. Thomas H. Cormen, C.E. Leiserson, R L.Rivest and C. Stein, Introduction to Algorithms, Third
edition, MIT Press, 2009.

Proceedings of the 65th Academic Council (17.03.2022) 976


Agenda Item 65/39 - Annexure - 35

Reference Books
st
1. Jon Kleinberg and ÉvaTardos, Algorithm Design, Pearson Education, 1 Edition, 2014.
2. Rajeev Motwani, Prabhakar Raghavan; Randomized Algorithms, Cambridge University Press,
1995 (Online Print – 2013)
3. Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin, Network Flows: Theory,
st
Algorithms, and Applications, 1 Edition, Pearson Education, 2014.
Mode of Evaluation: CAT, Written assignments, Quiz, FAT.
Recommended by Board of Studies 04-03-2022
Approved by Academic Council No. 65 Date 17-03-2022

Proceedings of the 65th Academic Council (17.03.2022) 977


Agenda Item 65/39 - Annexure - 35

BCSE204P Design and Analysis of Algorithms Lab L T P C


0 0 2 1
Pre-requisite Nil Syllabus version
1.0
Course Objectives
1. To provide mathematical foundations for analyzing the complexity of the algorithms
2. To impart the knowledge on various design strategies that can help in solving the real
world problems effectively
3. Synthesize efficient algorithms in various engineering design situations

Course Outcome
On completion of this course, student should be able to:
1. Demonstrate the major algorithm design paradigms.
2. Explain major graph algorithms, string matching and geometric algorithms along with their
analysis.

Indicative Experiments
1. Greedy Strategy : Activity Selection & Huffman coding
2. Dynamic Programming : ALS, Matrix Chain Multiplication , Longest Common
Subsequence, 0-1 Knapsack
3. Divide and Conquer : Maximum Subarray and Karatsuba faster integer multiplication
algorithm
4. Backtracking: N-queens
5. Branch and Bound: Job selection
6 String matching algorithms : Naïve, KMP and Rabin Karp,suffix trees
7 MST and all pair shortest path algorithms
8 Network Flows : Ford –Fulkerson and Edmond - Karp
9 Intersection of line segments &Finding Convexhull, Finding closest pair of points
10 Polynomial time algorithm for verification of NPC problems
11 Approximation and Randomized algorithms
Total Laboratory Hours 30 Hours

Text Book
1. Thomas H. Cormen, C.E. Leiserson, R L.Rivest and C. Stein, Introduction to
Algorithms, Third edition, MIT Press, 2009.
Reference Books
1. Jon Kleinberg and ÉvaTardos, Algorithm Design, Pearson Education, 1st Edition, 2014.
2. Rajeev Motwani, Prabhakar Raghavan; Randomized Algorithms, Cambridge University
Press, 1995 (Online Print – 2013)
3. Ravindra K. Ahuja, Thomas L. Magnanti, and James B. Orlin, Network Flows: Theory,
Algorithms, and Applications, 1st Edition, Pearson Education, 2014.
Mode of assessment: Continuous assessments, FAT.
Recommended by Board of Studies 04-03-2022
Approved by Academic Council No. 65 Date 17-03-2022

Proceedings of the 65th Academic Council (17.03.2022) 978

You might also like