This page is a work in progress.You can help improve it. →

theme: Next, 1

Questions and tools to help us

``Do you understand every word used within the problem statement?Use your own words to describe the problem.If needed, make a drawing depicting the situation.Have you solved any similar problems?What data or resources exist within the statement?What data or results exist within the statement?Is it possible to simplify the problem by dividing it into simpler cases?Do you know any hand-written ways to solve the problem?``

Restating the problem in your own, more detailed words

By rewriting the problem statement in your own words and increasing the difficulty, we start making connections.

Problems are frequently poorly written

``"Go to the store to get a steak, and if they have eggs, get six"Sends person to the store and they come back with six steaks.Why? Because they had eggs.``

Drawing helps!

Often drawing diagrams helps understand the problem and the flow of information.

[fit] Paper, whiteboard, a software tool

It does not matter; find what works best for you

[fit] Have you solved a similar problem?

The more problems you solve, the more similar they become.

We'll fill up our "bag of tricks" with techniques that we can apply.

[.column]

[.column]

"In the beginner's mind, there are many possibilities, but in the expert's, there are few."

[fit] What data or resources exist?

When working on algorithms, examples are 🎁 🎁 🎁!

Use the examples given.

In creating your examples, you begin working on the algorithm!

[fit] Can you break the problem into small parts?

Solving smaller parts is more manageable.

Putting the smaller solutions together may involve conditions or looping.

[fit] Can you find a manual way to solve the problem?

This is a "halfway" state to an algorithm.

Think of it as a "rough draft" of your algorithm.

• Practice

• Practice

• Practice