I think the dynamic programming meant here is more general. They mean saving results of a recursively formulated algorithm in a table so that you don't have to recompute them. This can be used for example for finding longest common subsequences, but it is much more general.
Can you elaborate on the general search procedure?
Is there a good resource that ties algorithms together like you've done here, but less concise?