Download presentation
Presentation is loading. Please wait.
Published byPatrick Robinson Modified over 9 years ago
1
Design and Analysis of Algorithms Introduction Instructors:1. B V Kiran Mayee, 2. A Madhavi E-mail :1. kiranmayee_bv@vnrvjiet.in, 2. madhavi_a@vnrvjiet.inkiranmayee_bv@vnrvjiet.inmadhavi_a@vnrvjiet.in
2
Intro - 2 CMS-DAA Course Overview Introduction to algorithm design, analysis, and applications Algorithm Analysis Asymptotic Notation, Recurrence Relations, Probability. Data Structures Lists, Heaps, Graphs, Trees, Balanced Trees, Hash Tables. Sorting & Searching Mergesort, Quicksort, BFS, DFS Algorithmic Design Techniques Divide and Conquer, Dynamic Programming, Greedy Algorithms, Graph Algorithms, Backtracking, Branch & Bound
3
Intro - 3 CMS-DAA Primary Focus Develop thinking ability. Problem solving skills. (algorithm design and application) Formal thinking. (proof techniques & analysis)
4
Intro - 4 CMS-DAA What Will We Do? Examine interesting problems. Devise algorithms to solve them. Prove these algorithms correct. Analyze their resource usage (time, memory). Understand data structures & core algorithms. Learn problem-solving techniques. See applications in real-world situations.
5
Intro - 5 CMS-DAA Goals Be very familiar with a collection of core algorithms. Be fluent in algorithm design techniques: divide & conquer, greedy algorithms, dynamic programming, backtracking and branch & bound methods. Be able to analyze the correctness and runtime performance of a given algorithm. Be familiar with the inherent complexity (lower bounds & intractability) of some problems. Be intimately familiar with basic data structures. Be able to apply techniques in practical problems.
6
Intro - 6 CMS-DAA Textbook & References Introduction to Algorithms, 2 nd Ed. by Cormen, Leiserson, Rivest, & Stein (CLRS), McGraw Hill, 2002. Fundamentals Computer Algorithms, 2 nd Ed. By Ellis Horowitz, Satraj Sahani, Sanguthever Rajasekaran, Unversity Press. OTHER REFERENCES: Algorithmics: The Spirit of Computing, Harel How to Solve It, Polya. The Design and Analysis of Computer Algorithms, Aho, Hopcroft and Ullman. Algorithms, Sedgewick. Algorithmics: Theory & Practice, Brassard & Bratley. Writing Efficient Programs & Programming Pearls, Bentley. The Science of Programming, by Gries. The Craft of Programming, by Reynolds.
7
Intro - 7 CMS-DAA Prerequisites Data Structures Discrete Mathematics Elementary Probability
8
Intro - 8 CMS-DAA Course Roadmap Algorithms Basics Divide and Conquer Greedy Algorithms Dynamic Programming Backtracking Branch & Bound NP Hard & NP Complete Problems.
9
Intro - 9 CMS-DAA Algorithms Basics Introduction to algorithms, complexity, and proof of correctness. Asymptotic Notation. Goals Know how to write formal problem specifications. Know about computational models. Know how to measure the efficiency of an algorithm. Know the difference between upper and lower bounds and what they convey. Be able to prove algorithms correct and establish computational complexity.
10
Intro - 10 CMS-DAA Divide-and-Conquer Designing Algorithms. Recurrences Relations. Binary Search, Quicksort, Mergesort. Goals Know when the divide-and-conquer paradigm is an appropriate one. Know the general structure of such algorithms. Express their complexity using recurrence relations. Determine the complexity using techniques for solving recurrences. Memorize the common-case solutions for recurrence relations.
11
Intro - 11 CMS-DAA Greedy Algorithms Greedy Algorithms Minimum Cost Spanning Trees Shortest Paths Goals Know when to apply greedy algorithms and their characteristics. Be able to prove the correctness of a greedy algorithm in solving an optimization problem. Understand where minimum spanning trees and shortest path computations arise in practice.
12
Intro - 12 CMS-DAA Dynamic Programming Dynamic Programming Optimal Binary Search Trees Travelling Sales Person Problem Matrix Chain Multiplication Goals Know when to apply dynamic programming and how it differs from divide and conquer. Be able to systematically move from one to the other.
13
Intro - 13 CMS-DAA Backtracking General Method N-Queens Problem Sum Of Subsets Problem Graph Coloring & Hamiltonian Cycles Goals Know when to apply backtracking method and its characteristics. Be able to generate State Space Tree for a given problem.
14
Intro - 14 CMS-DAA Branch & Bound General Method TSP Using LCBB 0/1 Knapsack Problem using LCBB & FIFOBB Goals Know when to apply branch&bound method and how it differs from backtracking method.
15
Intro - 15 CMS-DAA How to Succeed in this Course Start early on all assignments. DON'T procrastinate. Complete all reading before class. Participate in class. Think in class. Review after each class. Be formal and precise on all problem sets and in-class exams.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.