- 89 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about 'Summary of lectures' - desiderio

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

### Summary of lectures

Introduction to Algorithm Analysis and Design (Chapter 1-3). Lecture Slides

Recurrence and Master Theorem (Chapter 4). Lecture Slides

Sorting and Order Statistics (Chapter 8-9). Lecture Slides

Balanced Search Trees: red-back tree (chapter 13) and others Lecture Slides

Augmenting Data Structure (Chapter 14) Lecture Slides

Dynamic Programming (Chapter 15). Lecture Slides

Greedy Algorithms (Chapter 16). Lecture Slides

Amortized Analysis (chapter 17) Lecture slides

Divide and Conquer--closest pair (Chapter 33.4) Lecture slides

Lower bound: decision tree & adversary argument (handout) Lecture Slides

Introduction

Algorithms: serial vs. parallel

regular vs. approximate

deterministic vs. probabilistic

Algorithms design: data structures and algorithms

(disjoint set, red-black tree, AVL, B-Tree, 2-3-4)

Design methods: divide and conquer

dynamic programming, memoization

greedy algorithm

prune and search

specific methods: 7 in closest pair, 5 in ordered statistic,

Algorithm analysis: complexities-- space and time

worst, best, average

asymptotic notations: order of growth

Analysis methods: loop and loop invariant

recursive relation and equations

Substitution, Recursion tree, Master theorem, Domain Transformation, Change of variables

amortized analysis

adversary argument, decision argument (worst case lower bound)

Sorting and order statistic

- Sorting:
- Comparison: Lower bound O(nlg n), decision tree.
- Non-comparison: Bucket sort, counting sort, radix sort, (linear time).

- ith smallest elements:
- First (minimum), last (Maximum), both (3n/2).
- Prune-and-search
- RANDOMIZED-SELECT:Expected linear time O(n) but worst-case running time O(n2).
- SELECT: Linear worst-case running time O(n).

Dynamic programming

- Elements of DP:
- Optimal substructures
- Overlapping subproblems

- Four steps:
- Find/prove Optimal Substructure
- Find recursive solution
- write DP program to compute optimal value
- Construct optimal solution (path).

- Analysis of DP program
- Relations among: recursive algorithm, divide-and-conquer, Memoization.
- Auxiliary table.

Data structures

- Red-black trees
- Balance
- Rotation
- Augmenting

- Other trees:
- AVL, B-tree, B+-tree, 2-3-4, Treap, Splay

Amortized analysis

- Find the average worse-case performance over a sequence of operations
- Three methods:
- Aggregate analysis:
- Total cost of n operations/n,

- Accounting method:
- Assign each type of operation an (different) amortized cost
- overcharge some operations,
- store the overcharge as credit on specific objects,
- then use the credit for compensation for some later operations.

- Potential method:
- Same as accounting method
- But store the credit as “potential energy” and as a whole.

- Aggregate analysis:

Cross-topic reviews

- Given a problem,
- design its data structures, its algorithms, and analyze its complexity.

- Space and time trade-off
- Pre-processing

Questions types

- Design data structures
- Design algorithms (by different methods)
- Given algorithm, analysis of its (different techniques) functions and complexity.
- Problem-related specific questions: many!!
- Recursive and recurrence.
- Proof, computation, design, analysis.

Download Presentation

Connecting to Server..