ITM 207 Lecture Notes - Lecture 5: Pseudocode, List Of Fables Characters
Chapter 7: Problem Solving and Algorithms
Problem Solving: The act of finding a solution to a perplexing, distressing, vexing or unsettled
question
How to Solve Problems
• Understand the problem
• Devise a plan
• Carry out the plan
• Look back
Ask Questions
• What do I know about the problem?
• What is the information that I have to process in order to find the solution?
• What does the solution look like?
• What sort of special cases exist?
• How will I recognize that I have found the solution?
Look for Familiar Things
• Don’t reinvent the wheel
• If solution exist, use it
• Useful in computing as certain problems come up again and again in different guises
Divide and Conquer
• Break up a large problem into smaller units and solve each smaller problem
o Apply the concept of abstraction
o Divide-and-conquer approach can be applied over and over again until each
subtask is manageable
Algorithm
• A set of unambiguous instructions for solving a problem or subproblem in a finite amount
of time using a finite amount of data
Abstract Step: An algorithmic step containing unspecified details
Concrete Step: An algorithm step in which all details are specified
Two methodologies used to develop computer solutions to a problem:
1. Top-Down Design: Focuses on the tasks to be done
2. Object-Oriented Design: Focuses on the data involved in the solution
find more resources at oneclass.com
find more resources at oneclass.com