Questão FC373266
Considere o método Java abaixo. public static void dados(int x, int[] numeros) { int cont; for (cont = 0; cont < numeros.length; cont++) { if (numeros[cont] == x) { System.out.prin
Linguagens de Programação
FCC · 2022
Considere o método Java abaixo.
public static void dados(int x, int[] numeros) {
int cont;
for (cont = 0; cont < numeros.length; cont++) {
if (numeros[cont] == x) {
System.out.println("S");
break;
}
}
if (cont >= numeros.length) {
System.out.println("N");
}
}
Considerando o array numeros contendo {5, 3, 1, 8, 6, 9}, pode-se afirmar corretamente que o método utiliza um algoritmo de
- ordenação merge sort.
- pesquisa sequencial.
- ordenação bubble sort.
- ordenação quick sort.
- pesquisa binária.
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
O método percorre o vetor posição a posição e compara cada elemento com x; ao encontrar igual imprime "S" e usa break para sair do laço. Esse comportamento caracteriza a pesquisa sequencial.
Observe que a variável cont é incrementada de 0 até numeros.length; se o laço terminar sem encontrar x, a condição cont >= numeros.length indica ausência e imprime "N".
A pesquisa sequencial não exige que o array esteja ordenado: ela verifica cada posição até achar o elemento. Em termos de complexidade, tem tempo linear, ou seja, O(n) no pior caso, com melhor caso O(1) quando o elemento está na primeira posição.
Conteúdo do catálogo FC Concursos · Atualizado em