Muitos problemas computacionais são resolvidos repetindo-se uma mesma computação sobre coleções de dados de tamanho cada vez menor até que se chegue a um ponto onde não há mais necessidade de continuar esse processo. Isso é típico em problemas onde identifica-se claramente o perfil de sequência de dados. Uma das formas de expressar matematicamente uma sequência é a forma recursiva, já vista anteriormente.
[EXEMPLO] Considere o problema de realizar a soma dos elementos de uma dada sequência de valores: {3,8,20,21,34,44}. Encontre uma fórmula recursiva apropriada para representar essa soma.
∑{}⟹0∑{3,8,20,21,34,44}⟹3+∑{8,20,21,34,44}⟹8+∑{20,21,34,44}⟹20+...
soma({})=0soma({a1,a2,...,an})=a1+soma({a2,...,an})=a2+...
soma(lista)=0, caso lista=∅soma(elem1,sublista)=elem1+soma(sublista), caso contraˊrio.