Questão
ID 2560070Disciplina: Tecnologia da Informação
Assunto: Busca Sequencial
Ano: 2014 Banca: FGV - Fundação Getúlio Vargas Órgão: Câmara Municipal do Recife
Na linguagem de programação C, uma lista 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, conhecido como busca com sentinela:
int pesquisa (int vet[], int n, int chave)
{
asdint ind;
asdind = 0; vet[n] = chave;
asd/* != significa “diferente de” */
asdwhile (vet[ind] != chave)
asdasdsind = ind + 1;
asdif (ind == n)
asdasdreturn –1;
asdelse
asdasdreturn ind;
}
Sobre a implementação desse algoritmo, considere as seguintes afirmações:
I. asdasdpara que ele 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;
II. asdasdo algoritmo tem seu pior desempenho quando o valor da chave pesquisada encontra-se na posição n–1 de vet;
III.asdasd o algoritmo tem seu pior desempenho quando o valor da chave pesquisada não se encontra em nenhuma das posições de 0 a n-1 vet; em outras palavras, quando a chave não pertence à lista;
IV. asdasdse o valor de chave se encontra armazenado na posição t de vet, sendo 0 t < n, são realizadas, ao todo, exatamente t comparações envolvendo chave para localizá-la.
São verdadeiras apenas: