Eu estou estudando recursão e gostaria de saber onde posso usá-la, pois ate agora todos os exemplos que vi pode-se usar a iteração também.
Vlw
Recursão
2 Respostas
hummm tb ja tive essa duvida…
Mas imagine uma arvore… onde voce não sabe o tamanho dela.
É uma boa usar recursão… mas ainda assim pode se usar iteração…
Mas vamos piorar… imagina essa arvore, onde cada node pode conter N filhos…
Entao voce usa recursão… até chegar ao final da arvore…
Acho que é isso!
Abraços!
caro colega .... não sei se entendi a sua pergunta ........ ao que entendi o q vc qr com o q chama de "recursão" é uma coisa mais conhecida como recursividade (acredite .. é parecido mais confunde)
se for isso:
Vc utiliza da recursividade .. quando precisa q uma função trabalhe em cima de um resultado dela mesma ..... ou seja ....
vc chama uma funcção para ela mesma!!!
é um pouco complicado de explicar assim ..... porem ... a maior utilidade ... é quando vc tem q executar uma funçao varias vezes ... e tem q controla - la quantas vezes ira acontecer ........ e que a cada vez ela trabalhe em cima do resultado q ela mesma retornou ....... pode ser comparado com uma laço de repetição bem mais avançado...
exemplo....
public static String reduzum(String valor){
int a=0, cont_valor=valor.length(),apoio=0,b=0,c=0;
String j="";
while(cont_valor>0){
c=valor.length()-cont_valor;
j=String.valueOf(valor.charAt(c));
b=Integer.parseInt(j);
a+=b;
cont_valor--;
}
String apoiocomparativo=String.valueOf(a);
if(apoiocomparativo.length() > 1){
return reduzum(String.valueOf(a));
}
else
return String.valueOf(a);
}
no exemplo acima .. eu tinha um numero com N algarismos .. e eu precisava fazer a soma .... desses algarismos varias vezes ate q fique um numero com somente um algarismo.... enrao a funcção reduzum tem um IF q pergunta se o numero tem um caracter só (trasformo o numero em String ...... String.valueOf() para poder saber quantos algarismos tem).... se tem mais de um algarismo ... o ruduzum .. chama ele mesmo ....na hora e q é um algarismo soh .. ele acaba .. e retorna o numero de soh um algarismo .....
bom espero ter ajudado ... mas pra vc entender é soh praticando ....... e outra ... tem q pensar muito .. pq é uma lógica do caramba .... e é um treco q parece q naum vai dar certo ...
[[[]]]sss