CS 312: Algorithm Analysis

1 / 6

# CS 312: Algorithm Analysis - PowerPoint PPT Presentation

This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License. CS 312: Algorithm Analysis. Lecture # 39: Problem Solving. Credit: Eric Ringger. A Rough-Draft Set of Questions for Problem Solving. Problem-Solving. Problem Formulation Algorithm Design

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'CS 312: Algorithm Analysis' - steve

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

### CS 312: Algorithm Analysis

Lecture #39: Problem Solving

Credit: Eric Ringger

Problem-Solving
• Problem Formulation
• Algorithm Design
• Algorithm Analysis
• Theoretical Analysis: classify as asymptotic order of growth
• Empirical Analysis
• Proofs of Correctness
Questions for Problem Formulation
• What do I know?
• What do I not know but I want to know?
• What are my assumptions?
• Can I formulate the problem as a graph?
• Can the problem be reduced to a familiar problem?
• Is the problem an optimization problem?
• Is the objective linear?
• Does the problem have constraints?
• Are the constraints linear?
Questions for Algorithm Design
• Do I recognize the problem and know an algorithm that solves this problem?
• Is the problem NP-Hard but not NP-Complete?
• Is the problem NP-complete?
• Is it in NP?
• Can I reduce a known NP-complete problem to it?
• Does the problem decompose nicely into sub-problems?
• Do the sub-problems overlap?
• Does the optimality property hold?
Exercise
• Can you organize these questions (both problem formulation and algorithm design) into a usable decision tree to guide you in the practice of problem-solving?