KEMBAR78
DAA Syllabus | PDF | Algorithms | Computational Complexity Theory
0% found this document useful (0 votes)
59 views1 page

DAA Syllabus

The document outlines a course on Design and Analysis of Algorithms, focusing on analyzing algorithm performance, familiarizing with major algorithms and data structures, and applying algorithmic design techniques. It covers various topics including brute force methods, dynamic programming, greedy techniques, and backtracking, along with their applications in real-world problems. The course aims to equip students with the skills to write efficient algorithms and analyze their complexities while promoting teamwork and software development principles.

Uploaded by

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

DAA Syllabus

The document outlines a course on Design and Analysis of Algorithms, focusing on analyzing algorithm performance, familiarizing with major algorithms and data structures, and applying algorithmic design techniques. It covers various topics including brute force methods, dynamic programming, greedy techniques, and backtracking, along with their applications in real-world problems. The course aims to equip students with the skills to write efficient algorithms and analyze their complexities while promoting teamwork and software development principles.

Uploaded by

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

SEMESTER-II

Course Code : 541201 DESIGN AND ANALYSIS Credits:4 Hours:4


OF ALGORITHMS
Objectives  To analyze the asymptotic performance of algorithms.
 To demonstrate a familiarity with major algorithms and data structures.
 To apply important algorithmic design paradigms and methods of analysis.
 To get a clear idea about the various algorithm design techniques
 Using the algorithms in real time applications to able to analyze the efficiency
of algorithm.
Unit I Introduction: What is Algorithm? – Fundamentals of Algorithmic problem solving
– important problem types – Fundamentals of Analysis of Algorithm efficiency –
MathematicalAnalysisofNonRecursiveAlgorithms-MathematicalAnalysis of
Recursive Algorithms – Algorithm for Computing Fibonacci Numbers – Empirical
Analysis of Algorithms.
Unit II Brute Force – Selection Sort, Bubble sort, Sequential Search – Closet-Pair and
Convex-Hull Problems-Depth first search and Breadth first search – Divide and
Conquer – Merge sort, Quick sort, Binary Search, Strassen’s matrix multiplication.
Unit III Dynamic Programming – General Method – Computing a Binomial Coefficient –
Warshall’s and Floyd’s Algorithms- Optimal Search Binary trees – Knapsack
Problem – Greedy Technique - General Method, Applications - Prim’s Algorithm,
Kruskal’s Algorithm, Dijikstra’s Algorithm.
Unit IV Decrease and Conquer–Insertion sort–Depth First Search,Breadth First Search -
Topological Sorting – Algorithm for generating Combinatorial Objects. Transform
and Conquer – Presorting – Heap and Heap sort – Problem Reduction – Computing
Least Common Multiple – Counting Paths in a Graph- Reduction of Optimization
Problem – Reduction to Graph Problems.
Unit V Back Tracking – General Method – 8 Queen’s Problem – Sum of Subsets – Graph
Colouring – Hamiltonian cycle – Branch and Bound – General Method – Assignment
Problem - Knapsack problem – Travelling Salesman Problem. P, NP and NP-
complete Problems
Reference and Text Books:
AnanyLevitin, 2012. Introduction to Design and Analysis of Algorithms, Pearson education, 3e.
Analysis of Algorithms: A Strategic Approach, McGraw-Hill
Lee.R.C.T, Shian-Shyong Tseng, Ruei-Chuan Chang, Tsai.Y.T, 2005, Introduction to the
Design and Sridhar.S,1e, Design and Analysis of Algorithms, 2014 oxford university
press.
Outcomes:  Able to apply the algorithm design techniques to any of the real world
problem.
 Able to write efficient algorithm for a given problem and able to analyze its
time and space complexity
 To apply design and development principles in the construction of software
systems of varying complexity.
 To function effectively as a member of a team in order to accomplish a
common goal.
 To use current techniques, skills, and tools necessary for computing practice

You might also like