Considepe o seguinte algoritmo de busca, escrito em pseudoc...

Próximas questões
Com base no mesmo assunto
Q737811 Algoritmos e Estrutura de Dados

Considepe o seguinte algoritmo de busca, escrito em pseudocódigo:

i := 0;

WHILE (i < N) & (a [i] <> X) DO i := i + 1 END

onde o elemento a ser encontrado é x, e N é uma constante, pode-se afirmar que este algoritmo representa uma busca

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa Correta: E - Linear

Vamos entender o conceito por trás do algoritmo apresentado na questão. O algoritmo descrito é uma forma de busca linear, também conhecida como busca sequencial. Este tipo de busca é caracterizado por verificar cada elemento de uma lista ou array, um por um, até encontrar o item desejado ou até chegar ao fim da lista.

O pseudocódigo apresentado utiliza a seguinte lógica: inicializa a variável i em zero e realiza um laço WHILE que continua enquanto i for menor que N e o elemento atual a[i] for diferente de X. A cada iteração, i é incrementado em 1. Essa é a essência de uma busca linear.

Agora vamos analisar as alternativas incorretas e entender por que elas não se aplicam:

A - Em uma árvore binária de busca: Este tipo de busca é estruturado em uma árvore binária, onde cada nó tem no máximo dois filhos, e a busca é feita de forma ordenada. O algoritmo proposto não utiliza tal estrutura nem segue a lógica de uma busca ordenada em árvore.

B - Binária: A busca binária requer que a coleção de dados esteja previamente ordenada e funciona dividindo a lista ao meio repetidamente. O algoritmo na questão não realiza divisões; em vez disso, percorre cada elemento consecutivamente, o que caracteriza uma busca linear.

C - Direta em cadeias: Este termo não é comumente utilizado em algoritmos de busca, e seu significado pode ser interpretado de várias formas. Contudo, o que é importante aqui é que o algoritmo dado representa claramente uma busca linear.

D - Em uma árvore B: Árvores B são uma estrutura de dados mais complexa usada para armazenamento e recuperação de dados em sistemas de banco de dados e sistemas de arquivos. O algoritmo discutido não utiliza essa estrutura ou lógica.

Concluindo, o algoritmo analisado é um exemplo clássico de busca linear, pois percorre sequencialmente cada elemento da lista até encontrar o elemento desejado ou esgotar a lista.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Na área de informática, ou Ciência da Computação, costuma-se usar o termo busca linear (ou busca sequencial) para expressar um tipo de pesquisa em vetores ou listas de modo sequencial, i. e., elemento por elemento, de modo que a função do tempo em relação ao número de elementos é linear, ou seja, cresce proporcionalmente. Num vetor ordenado, essa não é a pesquisa mais eficiente, a pesquisa (ou busca) binária, por exemplo, é um tipo de pesquisa com o gráfico de tempo logarítmo.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo