When you're going down the path of learning data structures and algorithms, it helps to be able to visualize how these algorithms work. That's also an inherently difficult thing to do. Luckily there's lots of engineers out there and they make pretty cool things.
I found a pretty good algorithm visualizer.
I was working on a medium level Leetcode problem called "Ones and Zeros" (https://leetcode.com/problems/ones-and-zeroes/) that required an understanding of the 0/1 Knapsack problem.