Dynamic programming breaks problems into overlapping subproblems. Google loves DP questions because they test your ability to identify state, transitions, and optimal substructure.
You'll work through LeetCode problems: Jump Game, Jump Game II, Longest Increasing Subsequence, Word Break, Maximal Rectangle, and Maximum Product Subarray.