

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
O pseudocódigo apresentado a seguir representa a pesquisa de um elemento em um vetor ordenado, de forma recursiva, segundo o processo conhecido como pesquisa binária.
global var
valores: vetor [1..10] de inteiro
função bin (
pos_ini, pos_fim, x: inteiro
)
var
p, v: inteiro
início
se pos_ini > pos_fim então
retorne -1
senão
p <- (pos_ini + pos_fim) / 2
v <- valores[p]
se v = x então
retorne p
senão
se v < x então
retorne bin (p+1, pos_fim, x)
senão
retorne bin (pos_ini, p-1, x)
fim se
fim se
fim se
fim função
Considere o conjunto {4, 5, 8, 9, 14, 16, 17, 20, 23, 25} no vetor global valores, índice inicial 1 e final 10, e divisão entre inteiros truncando a parte decimal.
Com a chamada bin (1, 10, 20), o retorno da posição do número 20 ocorre após a função bin ser executada, incluindo a chamada inicial:
2 vezes;
4 vezes;
6 vezes;
8 vezes;
10 vezes.