Which of the following statements are true about recursion? Each correct answer represents a complete solution. Choose all that apply.
A. Its functions make the code look cleaner and more efficient.
B. Its logic is always easy to comprehend.
C. It can be used to break down a complex function into smaller sub-problems.
D. It is more efficient than nested iteration for creating sequences.