We should consider how frequently and its intended use when deciding which data structure is best suited to solve a particular problem.
Work towards having a base case, a condition that stops the recursion and returns a result.
Read: Why Big O
Read: Basic Data Structures
Watch: Basic Recursion
Watch: Data Structures in 15 Minutes
Watch: Big O Explained