×
YOU DID NOT WAKE UP TODAY TO BE MEDIOCRE.
--Your friends at LectureNotes
Close

Design And Analysis Of Algorithm

by Himanshu GulatiHimanshu Gulati
Type: NoteInstitute: Guru govind Singh indraprastha university Specialization: Computer Science EngineeringViews: 61Uploaded: 2 months ago

Share it with your friends

Suggested Materials

Leave your Comments

Contributors

Himanshu Gulati
Himanshu Gulati
CPS 230 DESIGN AND ANALYSIS OF ALGORITHMS Fall 2008 Instructor: Herbert Edelsbrunner Teaching Assistant: Zhiqiang Gu
CPS 230 Fall Semester of 2008 Table of Contents 1 I 2 3 4 5 II 6 7 8 9 III 10 11 12 Introduction 3 D ESIGN T ECHNIQUES 4 Divide-and-Conquer Prune-and-Search Dynamic Programming Greedy Algorithms First Homework Assignment 5 8 11 14 17 S EARCHING 18 Binary Search Trees Red-Black Trees Amortized Analysis Splay Trees Second Homework Assignment 19 22 26 29 33 P RIORITIZING 34 Heaps and Heapsort Fibonacci Heaps Solving Recurrence Relations Third Homework Assignment 35 38 41 44 IV 13 14 15 16 V 17 18 19 VI 20 21 22 VII 23 24 25 2 G RAPH A LGORITHMS 45 Graph Search Shortest Paths Minimum Spanning Trees Union-Find Fourth Homework Assignment 46 50 53 56 60 T OPOLOGICAL A LGORITHMS 61 Geometric Graphs Surfaces Homology Fifth Homework Assignment 62 65 68 72 G EOMETRIC A LGORITHMS 73 Plane-Sweep Delaunay Triangulations Alpha Shapes Sixth Homework Assignment 74 77 81 84 NP-C OMPLETENESS 85 Easy and Hard Problems NP-Complete Problems Approximation Algorithms Seventh Homework Assignment 86 89 92 95
1 Introduction Overview. The main topics to be covered in this course are Meetings. We meet twice a week, on Tuesdays and Thursdays, from 1:15 to 2:30pm, in room D106 LSRC. I Design Techniques; II Searching; III Prioritizing; Communication. The course material will be delivered in the two weekly lectures. A written record of the lectures will be available on the web, usually a day after the lecture. The web also contains other information, such as homework assignments, solutions, useful links, etc. The main supporting text is IV Graph Algorithms; V Topological Algorithms; VI Geometric Algorithms; VII NP-completeness. TARJAN . Data Structures and Network Algorithms. SIAM, 1983. The emphasis will be on algorithm design and on algorithm analysis. For the analysis, we frequently need basic mathematical tools. Think of analysis as the measurement of the quality of your design. Just like you use your sense of taste to check your cooking, you should get into the habit of using algorithm analysis to justify design decisions when you write an algorithm or a computer program. This is a necessary step to reach the next level in mastering the art of programming. I encourage you to implement new algorithms and to compare the experimental performance of your program with the theoretical prediction gained through analysis. The book focuses on fundamental data structures and graph algorithms, and additional topics covered in the course can be found in the lecture notes or other texts in algorithms such as K LEINBERG AND TARDOS . Algorithm Design. Pearson Education, 2006. Examinations. There will be a final exam (covering the material of the entire semester) and a midterm (at the beginning of October), You may want to freshen up your math skills before going into this course. The weighting of exams and homework used to determine your grades is homework midterm final 35%, 25%, 40%. Homework. We have seven homeworks scheduled throughout this semester, one per main topic covered in the course. The solutions to each homework are due one and a half weeks after the assignment. More precisely, they are due at the beginning of the third lecture after the assignment. The seventh homework may help you prepare for the final exam and solutions will not be collected. Rule 1. The solution to any one homework question must fit on a single page (together with the statement of the problem). Rule 2. The discussion of questions and solutions before the due date is not discouraged, but you must formulate your own solution. Rule 3. The deadline for turning in solutions is 10 minutes after the beginning of the lecture on the due date. 3
I D ESIGN T ECHNIQUES 2 3 4 5 Divide-and-Conquer Prune-and-Search Dynamic Programming Greedy Algorithms First Homework Assignment 4

Lecture Notes