43
Suggest me a book on algorithms
(lemmy.ml)
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Follow the wormhole through a path of communities !webdev@programming.dev
If you want to improve your problem solving skills, I'd suggest solving actual problems. Data structures and algorithms can be very satisfying in their own right, but the real value is in taking a real-world problem and translating it into code.
It also depends what you want to do with your knowledge. There are domains that are deeply technical and require a lot of the things you've mentioned, but they also tend to be pretty hard to break into. A lot of software is not so deep. Any software project will have need for good domain modeling, architecture, and maintainability. Again, these are things best learned through practice.
I agree, and here's a few different avenues of examples:
If trying to get past interviews, Leet code and hacker rank can be great. They're not so great for real world problems, but not bad.
Advent of code is a good middle ground between theory and practice in my opinion.
To really learn real world problem solving, I'd recommend implement a specification, without looking at existing implementations. For example, make a basic regex engine (formal Regular Expressions not PCRE expressions), or try to implement the C Preprocessor, or the JS event loop.