Recursão: Intervalos inclusivos de arrays
Escreva uma função que, dados os valores inicial startNum e final endNum, retorne um array contendo todos os números incluídos nesse intervalo. Veja os exemplos abaixo.
Exemplos
inclusiveArray(1, 5) ➞ [1, 2, 3, 4, 5]
inclusiveArray(2, 8) ➞ [2, 3, 4, 5, 6, 7, 8]
inclusiveArray(10, 20) ➞ [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
inclusiveArray(17, 5) ➞ [17]IMPORTANTE
- O uso de
IntStream.rangeeIntStream.rangeClosedé totalmente inaceitável; portanto, a recursão é o próprio propósito deste desafio.
Notas
- Os números do array estão ordenados em ordem crescente.
- Se
startNumfor maior queendNum, retorne um array com o maior valor. Veja o exemplo #4. - Espera-se que você resolva este desafio por meio de uma abordagem recursiva.
- Uma versão iterativa deste desafio pode ser encontrada neste link
- Uma coleção de desafios sobre recursão pode ser encontrada neste link.