0% found this document useful (0 votes)
17 views4 pages

DAA Syllabus

The course 'Design & Analysis of Algorithm' (E1UA306B) for BCA III Sem focuses on algorithm analysis, including time and space complexity, and various design techniques such as greedy methods and dynamic programming. Students will learn to analyze and design algorithms for searching, sorting, and graph problems, culminating in practical programming assignments. The course includes continuous assessment through lab work, mid-term exams, and a final exam.
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)
17 views4 pages

DAA Syllabus

The course 'Design & Analysis of Algorithm' (E1UA306B) for BCA III Sem focuses on algorithm analysis, including time and space complexity, and various design techniques such as greedy methods and dynamic programming. Students will learn to analyze and design algorithms for searching, sorting, and graph problems, culminating in practical programming assignments. The course includes continuous assessment through lab work, mid-term exams, and a final exam.
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/ 4

Name of The Course Design & Analysis of Algorithm

Course Code E1UA306B

Course Type Integrated


Class BCA III Sem
Prerequisite Data Structure
Corequisite
Antirequisite
L T P C
3 0 1 3

COURSE OVERVIEW:
To introduce students, the concepts of algorithm analysis for find out the space and time complexity of
different algorithms. Different design techniques such as greedy method, divide and conquer,
backtracking, dynamic programming, branch and bound are to be studied for finding the solution to the
different problems. It also provides an insight into the basic concepts of NP and NP-hard problems and
their relevance in research.

COURSE OBJECTIVE:
• To analyze and design different searching and sorting algorithm algorithms based upon different
designing approaches.
• To analyze and design different tree algorithms based upon different designing approaches.
• To choose appropriate algorithm design techniques for solving Greedy Algorithm real time
problems.
• To choose appropriate algorithm design techniques for solving Dynamic Programming real time
problems.

COURSE OUTCOMES:

Describe basic techniques for designing algorithms, including the techniques of


E1UA306B.1
recursion, divide-and-conquer, and greedy.

E1UA306B.2 Analyze algorithmic complexity for efficient problem-solving.

E1UA306B.3 Develop problem-solving skills through algorithmic approaches.

E1UA306B.4 Apply classical sorting, searching, optimization and graph algorithms.

Text Book (s)


T. Cormen, C.E. Leiserson, R.L. Rivest& C. Stein – Introduction to Algorithms – PHI – 2nd Edition, 2005
Reference Book (s)
1. Knuth E. Donald, Art of Computer Programming Sorting and Searching Vol3, Second Edition,
Pearson Education.
2. Brassard Bratley, “Fundamental of Algorithms”, PHI
3. A V Ahoetal, “The Design and analysis of Algorithms”, Pearson Education
4. Adam Drozdek, “Data Structures and Algorithms in C++”, Thomson Asia

COURSE CONTENT

THEORY+ PRACTICAL
Content
Introduction to Algorithms & Analysis
Introduction to Algorithms & Analysis- Design of Algorithms, Growth of function, Complexity of
Algorithms, Asymptotic Notations, Recurrences (Master Method) Sorting: Insertion Sort, Quick
Sort, Merge Sort

Advance Data Structure


Advanced Data Structure: Binary Tree, Traversal of Binary Tree, Binary Search Trees Property,
Operations on BST

Advance Design and Analysis Techniques


Advanced Design and Analysis Techniques: Dynamic programming (Matrix Chain Multiplication,
Longest Common Subsequence), Greedy Algorithm (Fractional Knapsack problem, Huffman
Codes)

Graph Algorithms
Graph Algorithms: Elementary Graph Algorithms, Breadth First Search, Depth First Search,
Minimum Spanning Tree, Kruskal’s Algorithms, Prim’s Algorithms, Single Source Shortest Path
(Dijkstra’s Algorithm)

Advanced Algorithm Design


String Matching (Naive, Rabin-Karp), Matrix Operations (Strassen’s Matrix Multiplication)

Practical
List of Experiments
1. Study and compare different asymptotic notations.
2. Write a program to sort given set of numbers in ascending order using Bubble
sort.
3. Write a program to sort given set of numbers in ascending order using Selection
Sort.
4. Write a program to sort given set of numbers in ascending order using Insertion
sort.
5. Write a program to sort given set of numbers in ascending order using Quick
sort.
6. Write a program to sort given set of numbers using Merge Sort.
7. Write a program to insert elements in an empty Binary tree.
8. Write a program to insert elements in an empty Binary search tree.
9. Write a program to implement Matrix Chain Multiplication.
10. Write a program to implement fractional Knapsack using Greedy technique.
11. Write a program to implement Breadth First Search (BFS) for a given Graph G.
12. Write a program to implement Depth First Search (DFS) for a given Graph G.
13. Write a program to make the Minimum Spanning tree using Kruskal Approach.
14. Write a program to make the Minimum Spanning tree using Prim's Approach.

CONTINUOUS ASSESSMENT PATTERN:

The course assessment patterns are the assessment tools used both in formative and summative examinations.

CIE Total Marks


Final
Type of Course (B) LAB Work @
MTE LAB CIE SEE Marks
+ Record EXAM*
INTEGRATED 25 50 25 100 100 100

@
Lab Work-15 marks + Lab Record-10 marks

You might also like