Algorithm Finder

“I have a problem. What should I consider?” Answer the questions by clicking; every step explains what the choice means, and the final recommendation links to why, complexity, a demo, code and practice.

Choose between search, windows, prefix sums, stacks, heaps, and string techniques.

Step 1
What is the shape of the problem?