La recursividad consiste en definir un concepto en términos del mismo concepto, resolviendo problemas a través de la división en subproblemas más pequeños hasta alcanzar casos bases triviales. Los problemas que pueden resolverse de forma recursiva incluyen aquellos que pueden dividirse en subproblemas idénticos pero más pequeños, con soluciones directas a los casos bases. Aunque recursividad proporciona soluciones elegantes, puede ser ineficiente debido a la sobrecarga de llamadas recursivas.