Escrever um método recursiva que determine a quantas vezes um determinado caracter
aparecer em uma String
?
Quando for pensar em recursividade, comece pensando no caso base. Qual é a situação mais simples que você pode se deparar? Uma String de tamanho 0, certo? Nesse caso, a contagem com certeza é 0. Assim, você pode fazer (pseudocodigo):
contarOcorrencias(char letra, String texto):
if texto.tamanho == 0:
return 0;
else
primeiraLetra = texto[0]
int count = primeiraLetra == letra ? 1 : 0
return count + contarOcorrencias(letra, texto.substringAPartirDoIndice(1))
2 curtidas
Explicação:
Basicamente, é uma função ou método que chama a si mesmo até satisfazer uma condição, no seu caso você deve varrer esse texto até a sua última posição.
Olha como é simples:
public static int countLetter(char letter, String texto)
{
if (texto.length() == 0) return 0;
if (texto.charAt(0) == letter)
return 1 + countLetter(letter, texto.substring(1));
return countLetter(letter, texto.substring(1));
}
1 curtida
vlw mano mimk ajudou bastante
vlw kra mim ajudou bastante