Na linguagem C, uma lista sequencial com n elementos pode ser armaz...
🏢 FGV🎯 TJ-GO📚 Linguagens de Programação
#Linguagens de Programação#C
Esta questão foi aplicada no ano de 2014 pela banca FGV no concurso para TJ-GO. A questão aborda conhecimentos da disciplina de Linguagens de Programação, especificamente sobre Linguagens de Programação, C.
Esta é uma questão de múltipla escolha com 5 alternativas. Teste seus conhecimentos e selecione a resposta correta.
Na linguagem C, uma lista sequencial com n elementos pode ser armazenada em um vetor, ocupando as posições cujos índices variam de 0 a n-1. Considere o seguinte algoritmo de pesquisa, denominado busca com sentinela:
int pesquisa (int vet[], int n, int chave) {
int ind;
vet[n] = chave; /* sentinela */
ind = 0; while (vet[ind] != chave) ind = ind + 1;
if (ind == n) return –1; /* Não encontrou * / else return ind; /* Encontrou */ }
Sobre essa implementação do algoritmo de busca com sentinela, analise as afirmativas a seguir:
I. Para que ela funcione corretamente, é necessário que o vetor vet contenha, pelo menos, n+1 posições, sendo as n primeiras (de 0 a n-1) ocupadas pelos elementos e a última, vaga, que abrigará a sentinela.
II. Nesta implementação, o algoritmo tem seu pior desempenho quando o valor de chave não se encontra em nenhuma das posições de 0 a n-1 de vet; em outras palavras, quando chave não pertence à lista.
III. Se o valor de chave se encontra armazenado na posição t de vet, sendo 0 ≤ t < n, são realizadas exatamente t comparações envolvendo chave até localizá-la.