Design and Analysis of Algorithms (04 Credits / 4 hours per week)

Slides:



Advertisements
Similar presentations
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
Advertisements

Analysis & Design of Algorithms (CSCE 321)
CS333 Algorithms
Jan Welcome to the Course of Advanced Algorithm Design (ACS-7101/3)
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 1 (Part 1) Introduction/Overview Tuesday, 9/4/01.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2009 Lecture 1 Introduction/Overview Text: Chapters 1, 2 Th. 9/3/2009.
CS333/ Topic 11 CS333 - Introduction CS333 - Introduction General information Goals.
CSIS-385: Analysis of Algorithms Dr. Eric Breimer.
Chapter 10: Algorithm Design Techniques
Data Structures, Spring 2004 © L. Joskowicz 1 DAST – Final Lecture Summary and overview What we have learned. Why it is important. What next.
1 Summary of lectures 1.Introduction to Algorithm Analysis and Design (Chapter 1-3). Lecture SlidesLecture Slides 2.Recurrence and Master Theorem (Chapter.
Instructor: Dr. Sahar Shabanah Fall Lectures ST, 9:30 pm-11:00 pm Text book: M. T. Goodrich and R. Tamassia, “Data Structures and Algorithms in.
Algorithm Design and Analysis Liao Minghong School of Computer Science and Technology of HIT July, 2003.
CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.
1 Summary of lectures 1.Introduction to Algorithm Analysis and Design (Chapter 1-3). Lecture SlidesLecture Slides 2.Recurrence and Master Theorem (Chapter.
Algorithms  Al-Khwarizmi, arab mathematician, 8 th century  Wrote a book: al-kitab… from which the word Algebra comes  Oldest algorithm: Euclidian algorithm.
10/20/20151 CS 3343: Analysis of Algorithms Review for final.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 28, 2014.
INTRODUCTION. What is an algorithm? What is a Problem?
CS223 Advanced Data Structures and Algorithms 1 Review for Final Neil Tang 04/27/2010.
Course Review Fundamental Structures of Computer Science Margaret Reid-Miller 29 April 2004.
Design and Analysis of Algorithms (09 Credits / 5 hours per week) Sixth Semester: Computer Science & Engineering M.B.Chandak
CES 512 Theory of Software Systems B. Ravikumar (Ravi) Office: 141 Darwin Hall Course Web site:
CES 592 Theory of Software Systems B. Ravikumar (Ravi) Office: 124 Darwin Hall.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Review Lecture Tuesday, 12/11/01.
Design and Analysis of Algorithms Introduction Instructors:1. B V Kiran Mayee, 2. A Madhavi
Algorithms Design and Analysis CS Course description / Algorithms Design and Analysis Course name and Number: Algorithms designs and analysis –
DATA STRUCTURES Prepared by, K.ABINAYA L/IT. Aim: To present the concepts of arrays, structures, stack, queue, linked list, graphs, trees and storage.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 30, 2014.
2016/3/13Page 1 Semester Review COMP3040 Dept. Computer Science and Technology United International College.
1.  This course covers the mathematical foundations of computer science and engineering. It provides an introduction to elementary concepts in mathematics.
Design and Analysis of Algorithms Peng ZHANG ( 张鹏 ) School of Computer Science and Technology, Shandong University.
1 COMP9007 – Algorithms Course page: + Blackboard link Lecturer: M.Reza Hoseiny M.Reza Hoseiny Level.
CSC 421: Algorithm Design & Analysis
Design and Analysis of Algorithms
Advanced Algorithms Analysis and Design
Welcome to the Course of Advanced Algorithm Design
Design and Analysis of Algorithms (09 Credits / 5 hours per week)
Data Structures and Algorithms
Lecture 1 Introduction/Overview Text: Chapters 1, 2 Wed. 1/28/04
About CS5234 (Wk 0) Course Overview About CS5234 Homeworks
CSC 421: Algorithm Design & Analysis
Summary of lectures Introduction to Algorithm Analysis and Design (Chapter 1-3). Lecture Slides Recurrence and Master Theorem (Chapter 4). Lecture Slides.
Courtsey & Copyright: DESIGN AND ANALYSIS OF ALGORITHMS Courtsey & Copyright:
Introduction of ECE665 Computer Algorithms
CSC 421: Algorithm Design & Analysis
Data Structures and Algorithms
CS 3343: Analysis of Algorithms
Design and Analysis of Computer Algorithm (CS575-01)
CS 3343: Analysis of Algorithms
Definition In simple terms, an algorithm is a series of instructions to solve a problem (complete a task) We focus on Deterministic Algorithms Under the.
Design and Analysis of Algorithms (07 Credits / 4 hours per week)
CS 3343: Analysis of Algorithms
CS 3343: Analysis of Algorithms
Objective of This Course
CS 3343: Analysis of Algorithms
CMPT 438 Algorithms Instructor: Tina Tian.
Course Contents: T1 Greedy Algorithm Divide & Conquer
Unit-4: Dynamic Programming
CS 3343: Analysis of Algorithms
26 July 2011 SC 611 Class 1.
Chapter 1 Introduction.
Design and Analysis of Algorithms
Advanced Analysis of Algorithms
Design and Analysis of Algorithms
INTRODUCTION TO ALOGORITHM DESIGN STRATEGIES
Department of Computer Science & Engineering
Review for Final Neil Tang 05/01/2008
Algorithm Course Algorithms Lecture 3 Sorting Algorithm-1
COMP 122 – Design and Analysis of Algorithms
Presentation transcript:

Design and Analysis of Algorithms (04 Credits / 4 hours per week) Fifth Semester: Computer Science & Engineering Dr.M.B.Chandak hodcs@rknec.edu, www.mbchandak.com

Course Contents The course is divided into three major components 1. Design of Algorithms using standard paradigms like: Greedy, Divide and Conquer, Dynamic programming, Backtracking. 2. Mathematical analysis of algorithms using Complexity analysis, recurrence analysis, induction, amotorized analysis. 3. Classification of algorithms in P and NP classes & use of traversal techniques and advanced data structures. Total units: 6 Unit 1 and 2: Analysis of algorithms Unit 3, 4, 5: Design of algorithms Unit 6: P and NP problems

Course Pre-requisite Data Structures and program design [DSPD] Theoretical foundations of Computer Science [TOFCS] Discrete Mathematics and Graph Theory [DMGT] Basics of Mathematics: Induction, Recurrence etc. Active Class participation and Regularity

Unit wise course: What are you learning UNIT-I: Mathematical foundations, summation of arithmetic and geometric series, n, n2 , bounding summations using integration, recurrence relations, solutions of recurrence relations using technique of characteristic equation and generating functions, Complexity calculation of various standard functions, principles of designing algorithms UNIT-II: Asymptotic notations of analysis of algorithms, analyzing control structures, worst case and average case analysis, amortized analysis, application of amortized analysis, Sorting networks, comparison networks, bio-tonic sorting network.

Unit wise course UNIT-III: PART I Greedy Algorithms: Introduction to Greedy algorithm and basic principle Examples: Knapsack problem: Principle, numerical example, algorithm, complexity calculation Minimum Cost Spanning Tree: Prims Algorithm, Reverse Delete Algorithm Single source shortest path algorithm Dijkastra Algorithm, Optimized Dijkastra [Dial Algorithm] Job Sequencing Problem: [Assignment on case study] Maximum Flow Problem: Theory, numerical, example and application Water Connection Problem: Theory, numerical, example, algorithm and application Methodology to compute complexity of algorithm with each topic

Unit wise course UNIT-III: Part-II Divide and Conquer Introduction to Divide and Conquer and basic principle Example Min-Max problem: Principle, example, algorithm, complexity Quick Sort: Example, complexity equation Matrix multiplication: Strassen’s Algorithm Median of two sorted arrays Closest pair algorithm: Case study and discussion on solution [Assignment on case study]

Unit wise course Dynamic Programming: UNIT-IV Dynamic Programming: Introduction to dynamic programming and basic principle Example: Longest common subsequence and Longest increasing subsequence: Theory, example, algorithm, complexity Optimal Binary Search Tree: Theory, example, application, algorithm, complexity Minimum Edit Distance: Theory, example, application Travelling Salesman problem: Theory, example, application Multi-stage graph: Theory, example, algorithm, application, complexity Coin Change problem: Theory, application, example Maximum Sum Rectangle in 2D array: Theory, example [Assignment on case study]

Unit wise course UNIT-V Unit-5: Part-I: Basic Traversal Techniques: Introduction and need of traversal techniques on trees and graphs Articulation point in a Graph Applications of DFS and BFS [Cloud computing preview] Application of Inorder, preorder and postorder traversals [Big data preview] Part-II: Backtracking: Introduction, principle and need of backtracking Example: Sum of Subset, N-Queen, and Graph colouring: Principle, example, algorithm Pattern matching without using regular expression

Unit wise course UNIT-VI: NP-hard and NP-complete problems, basic concepts, non-deterministic algorithms, NP-hard and NP-complete, decision and optimization problems, graph based problems on NP Principle.

Course Outcomes: Why you learned S.No Course Outcome Unit 1 Ability to understand mathematical formulation, complexity analysis and methodologies to solve recurrence relations for algorithms. Unit 1, 2 2 Ability to design algorithms using standard paradigms like: Greedy, Divide and Conquer, Dynamic Programming and Backtracking. Unit 3, 4, 5 3 Ability to design algorithms using advance data structures and implement traversals techniques. Unit 2, 5 4 Ability to understand NP class problems and formulate solutions using standard approaches. Unit 6 5 Ability to apply algorithm design principles to derive solutions for real life problems and comment on complexity of solution. Unit 1,2,3,4,5,6

Grading Scheme: Internal: Technologies: Python, GOLang, Java & Angular JS. Total: 40 marks Three Test: T1, T2, T3 [Best of three: TWO] [15 x 2 = 30 marks] 10 marks distribution: Class attendance 75% is compulsory for submission of class assignment Assignment Mode: Individual Assignment Type: Programming Project, Reading and Solving, Application for society/students etc.

Probable Grading Scheme Maximum score: 90-95 Minimum score: 42-45 Last year cutoff: 42 out of 100

Text Books: www.mbchandak.com: July 2019 Horowitz, Sahani Rajashekaran Thomas Cormen Dave and Dave

Introduction: Algorithm Logical Sequence Well defined Discrete Step To describe solution of given problem in English language Can be converted into program by applying programming language Two different ways to convert algorithm into program Recursion Iteration Question: When to use recursion / iteration

Idea of Basis, Process and Proof Basis: Initial or final state Process: Transition logic Proof: Support / Test cases Example: Factorial algorithm Basis Process Proof Recursive / Iterative