Fazer um método de busca linear recursiva

1 resposta
javascriptprogramaçãojava
V

Boa tarde, tenho o seguinte código (aparentemente sem erro), porém quando executo ele dá:

Exception in thread “main” java.lang.StackOverflowError
at algesd/algesd.Buscalr.buscalr(Buscalr.java:10)

Preciso fazer um método recursivo de busca linear, segue o código:

public class Buscalr {

//public static void main (String arg []) {
	
	private static int res1;
	public static int buscalr (int vet [], int elem, int ini) {
		
		return buscalr (vet, ini +1, elem);
		//return ini;
		
	}
	public static void main (String args []) {
		
		int[] vet = {12, 14, 16, 18, 20};
		res1 = buscalr (vet, 3, 1);
		System.out.println("O resultado é: " + res1);
		
	}
//}

}

1 Resposta

Lucas_Camara

Você tem que colocar uma condição de parada, senão o método buscarl será chamado infinitamente. E essa condição de parada tem que ser o critério para encontrar o elemento pesquisado.

Criado 12 de março de 2020
Ultima resposta 12 de mar. de 2020
Respostas 1
Participantes 2