I'm not impressed with the dynamic programming part, which is what I'm trying to learn right now.
It simply lists it under recursion and after skimming, I see no mention of bottom up DP (iteratively) and there's only one problem about it.
I'm still looking for a good resource, but this one gave me quite a bit of insight [1]. Since it reuses the same problem over and over again and tweaks it, which gave me a better view of DP.
"Algorithm Design" by Kleinberg & Tardos is pretty good. Chapter 6 is its Dynamic Programming chapter, and there are 9 examples in the chapter with pseudocode and analysis.
Some of its dynamic programming examples: Weighted Interval Scheduling, Segmented Least Squares, Subset Sums / Knapsacks, RNA Secondary Structure, Sequence Alignment (aka: Diff), Shortest Path in Graphs.
All in just a ~50 page chapter.
The other chapters on Network Flow, Greedy Algorithms are also excellent.
"Algorithm Design" is an advanced text, but that's how it covers more material than easier textbooks since it won't waste your time on the beginner level stuff.
-------------
Honestly, given the beginner-nature of the textbook here, I think they're doing a decent job. Dynamic programming isn't as fundamental as the stack / queue / sorting / searching etc. etc. that's being discussed in "Problem Solving with Algorithms and Data Structures".
Dynamic programming is definitely something that should be reserved for more advanced textbooks (with maybe, at best, an introduction to the subject at this level).
> Honestly, given the beginner-nature of the textbook here, I think they're doing a decent job. Dynamic programming isn't as fundamental as the stack / queue / sorting / searching etc. etc. that's being discussed in "Problem Solving with Algorithms and Data Structures".
Ah, I think I set my expectations wrong with regards to the level.
It simply lists it under recursion and after skimming, I see no mention of bottom up DP (iteratively) and there's only one problem about it.
I'm still looking for a good resource, but this one gave me quite a bit of insight [1]. Since it reuses the same problem over and over again and tweaks it, which gave me a better view of DP.
[1] https://www.youtube.com/watch?v=jTjRGe0wRvI