Weekend Code Challenge is a collection of coding problems and their solutions. It's a compendium of real-world challenges and coding puzzles that can sharpen your coding skills. Each problem is small in scope so you can work on it over the weekend and still have time for other things you need to get done.
- Click on a folder to view the coding challenge.
- Read the problem statement and take note of any additional information like
Example data
,Expected output
andTips
. - Work on your solution. Let your imagination take charge, and don't limit yourself to your first idea.
- Confirm your answer and consider possible edge cases.
- When ready, check the
SOLUTION.md
, and compare your answer to the proposed solutions.
Some of these problems will be the kinds of coding challenges you might encounter while working on a project as a developer. Others will take the shape of a typical "algorithm" problem.
Algorithms get a lot of flak because they often seem far removed from the day-to-day work we actually encounter as developers. However, the process of solving them uncovers a treasure trove of techniques, ways of thinking, and other skills that are incredibly useful for appying to other real-world coding problems. While finding the nth number in an unsorted array may seem trivial, the techniques you use to solve it will be useful in a wide variety of other problems.
Where applicable, I'll lightly explore the time and space complexity of the provided solutions. This step is meant to encourage you to think about this regarding your own code, and to get you in the habit of always doing so.
For a quick primer on time complexity and "Big(O) notation" please check out this simple guide to get started:
If you'd like to contribute to this project, please see the Contribution Guide