0% found this document useful (0 votes)
34 views15 pages

Lec-1 Course Description

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

Lec-1 Course Description

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

DESIGN & ANALYSIS OF ALGORITHMS

(BCAE0106)

Course: BCA III Year Vth Semester


By: Akanksha
[email protected]
+91-8295375959
Prerequisites
• Basic knowledge of programming and
mathematics.

• Moreover, it is preferred if the students have


basic understanding of Data Structure Using
‘C’.
Course Description
• An Algorithm is a sequence of steps to solve a problem.

• Algorithm is used to solve different types of problems in


the branch of computer science and information
technology.

• This course introduces the fundamental concepts of


Designing Strategies, Complexity analysis of Algorithms,
followed by problems on Graph Theory and Sorting
methods.
Learning Objectives

• To study paradigms and approaches used to analyze


and design algorithms and to appreciate the impact of
algorithm design in practice.
• How the worst-case time complexity of an algorithm is
defined, how asymptotic notation is used to provide a
rough classification of algorithms.
• How a number of algorithms for fundamental
problems in computer science and engineering work
and compare with one another.
• How to design efficient algorithms for the problem
areas which is still unknown & find whether there exist
efficient algorithms or not.
Syllabus
Module-1
• Basic of Algorithm Analysis: Analyzing
Algorithms, Worst Case and Average Case
Analysis, Asymptotic Notations (Omega,
Theta, Big "Oh", Little "Oh", Little Omega).

• Recurrences: Substitution Method,


Recursion Tree Method, Master Method.

• Divide and Conquer Method: Binary


Search, Merge Sort and Quick Sort.
Module-1
• Sorting in Linear Time: Radix Sort and
Insertion Sort.

• Graph Algorithms: Elementary Graph


Algorithms, Breadth First Search, Depth First
Search.

• Minimum Spanning Tree: Kruskal’s Algorithm,


Prim’s Algorithm.
Module-2
• Single Source Shortest Path: Dijkstra’s
Algorithm.

• All Pair Shortest Path: Floyd-Warshall


Algorithm, Traveling Salesman Problem.

• Advanced Data Structures: B–Trees.


Module-2
• Dynamic Programming: Elements of Dynamic
Programming, Matrix Chain Multiplication,
Longest Common Subsequence.

• Greedy Method: Knapsack Problem, Huffman


Coding.

• Advanced Data Structures: AVL Tree, 2-3 Tree,


2-3-4 Tree.
Outcome
• Learn good principles of algorithm design.
• Learn how to analyze algorithms and estimate
their worst-case and average-case behavior.
• Become familiar with fundamental data
structures and with the manner in which these
data structures can best be implemented.
• Learn how to apply their theoretical
knowledge in practice.
Text Book
• Thomas H. Coreman, Charles E. Leiserson and
Ronald L. Rivest, (2010), “Introduction to
Algorithms”, Printice Hall of India, 5th ed.
Reference Books

• E. Horowitz & S. Sahni, (2007), "Fundamentals


of Computer Algorithms", Galgotia Publication
Pvt. Ltd.

• Aho, Hopcraft, Ullman, (2008), “The Design


and Analysis of Computer Algorithms”,
Pearson Education.
STUDENT EVALUATION
1) Regular class discussions
2) Topic wise assignments
3) Quizzes
4) Mid term and End term exam.
Marks Distribution
• Mid Term 30 Marks
• End Term 50 Marks
• TA 20 Marks
• Total 100 Marks
TA includes:
• Attendance - 5 Marks
• Assignment/ Quiz / Presentations etc 15 Marks
Thank You !!!

You might also like