0% found this document useful (0 votes)
155 views

Design and Analysis of Algorithms

The document outlines the course content for the Design and Analysis of Algorithms subject at Gujarat Technological University, including topics such as analyzing algorithm efficiency using asymptotic notation, divide and conquer algorithms, greedy algorithms, dynamic programming, exploring graphs, string matching, and NP-completeness. The course is evaluated based on a university exam, mid-semester exam, and internal assessment, with reference books on algorithms also listed.

Uploaded by

Lia
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
155 views

Design and Analysis of Algorithms

The document outlines the course content for the Design and Analysis of Algorithms subject at Gujarat Technological University, including topics such as analyzing algorithm efficiency using asymptotic notation, divide and conquer algorithms, greedy algorithms, dynamic programming, exploring graphs, string matching, and NP-completeness. The course is evaluated based on a university exam, mid-semester exam, and internal assessment, with reference books on algorithms also listed.

Uploaded by

Lia
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

GUJARAT TECHNOLOGICAL UNIVERSITY

B. E. SEMESTER: V
Computer Engineering/Computer Science & Engineering

Subject Name: Design and Analysis of Algorithms


Subject Code: 150703

Teaching Scheme Evaluation Scheme


Theory Tutorial Practical Total University Exam Mid Sem Internal
(Theory) Exam Assessment
(E) (Theory) (I)
(M)
4 0 2 6 70 30 50

Sr.
Course Content
No.
1. Basics of Algorithms and Mathematics:
What is an algorithm?, Mathematics for Algorithmic Sets, Functions and Relations,
Vectors and Matrices, Linear Inequalities and Linear Equations.

2. Analysis of Algorithm:
The efficient algorithm, Average and worst case analysis, Elementary operation,
Asymptotic Notation, Analyzing control statement, Amortized analysis, Sorting Algorithm,
Binary Tree Search.

3. Divide and Conquer Algorithm:


Introduction, Multiplying large Integers Problem, Problem Solving using divide and
conquer algorithm - Binary Search, Sorting (Merge Sort, Quick Sort), Matrix Multiplication,
Exponential.

4. Greedy Algorithm
General Characteristics of greedy algorithms, Problem solving using Greedy Algorithm
- Activity selection problem, Elements of Greedy Strategy, Minimum Spanning trees
(Kruskal’s algorithm, Prim’s algorithm), Graphs: Shortest paths, The Knapsack Problem,
Job Scheduling Problem.

5. Dynamic Programming:
Introduction, The Principle of Optimality, Problem Solving using Dynamic Programming –
Calculating the Binomial Coefficient, Making Change Problem, Assembly Line-
Scheduling, Knapsack problem, Shortest path, Matrix chain multiplication, Longest
Common Subsequence.
6. Exploring Graphs:
An introduction using graphs and games, Traversing Trees – Preconditioning, Depth First
Search - Undirected Graph, Directed Graph, Breath First Search, Backtracking – The
Knapsack Problem, The Eight queens problem, General Template.

7. String Matching:
Introduction, The naive string matching algorithm, The Rabin-Karp algorithm, String
Matching with finite automata.

8. Introduction to NP-Completeness:
The class P and NP, Polynomial reduction, NP- Completeness Problem, NP-Hard
Problems.

Reference Books:
1. Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest
and Clifford Stein, PHI.
2. Design and Analysis of Algorithms, Dave and Dave, Pearson.
3. Fundamental of Algorithms by Gills Brassard, Paul Bratley, PHI.
4. Introduction to Design and Analysis of Algorithms, Anany Levitin, Pearson.

You might also like