Algoritmo De Busca Linear E Binaria
Este algoritmo faz uma busca no vetor procurando todas as ocorrências do elemento desejado, portanto este algoritmo permite elementos duplicados no vetor. O algoritmo mostra a posição onde o(s) elemento(s) foi encontrado dentro do vetor. Á variável C é um contador, para verificar se foi encontrada alguma ocorrência.
Estrutura do Algoritmo
writeln('Entre com o elemento a ser encontrado no vetor !'); readln(e); i := 1; while (i <= n) do begin if(mat[i] = e) then begin writeln('Elemento ',e,' encontrado na posicao ',i); c := c + 1; end; i :=i +1; end;
Algoritmo de Busca Binária O algoritmo de Busca Binária requer que os elementos do vetor estejam ordenados de forma crescente e não permite a existência de elementos duplicados no vetor. Este algoritmo trabalha com posições fornecidas pelo usuário, na tentativa de localizar o elemento desejado , o algoritmo verifica se o elemento procurado é menor ou maior que o elemento que se encontra na posição sugerida pelo usuário , desprezando os elementos do vetor que se encontrem abaixo ou acima da posição sugerida.
Estrutura do Algoritmo
writeln('Entre com o elemento a ser encontrado no vetor !'); readln(e); i := 1; r := n; found := 1; while (i <= n) and (found = 1) do begin writeln; writeln('Entre com uma posicao entre ',i,' e ',r); readln(pos); if (pos < i ) or (pos > r) then found := 1 else begin if(mat[pos] = e) or (i = r) then begin writeln; writeln('Elemento ',e,' encontrado na posicao ',pos); found:=0; end else begin if mat[pos] < e then i :=pos + 1 else r := pos - 1 end