Recursion: Functions that call themselves. Every recursive solution needs a base case (when to stop) and a recursive case (when to continue).
Common pattern:
function solve(problem): if base_case: return result return solve(smaller_problem)
Sorting: Know that comparison sorts are time at best (space varies by algorithm). Understand merge sort and quicksort conceptually. Know that built-in sorts are usually good enough.
You rarely implement sorting in interviews, but you often use it as a preprocessing step.
For deep coverage, see the Recursion and Sorting sections in the Data Structures roadmap.