"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Algoritmos de pesquisa

Algoritmos de pesquisa

Publicado em 31/07/2024
Navegar:175

Search Algorithms

Compreendendo a pesquisa binária em PHP

A pesquisa binária é um algoritmo mais eficiente para encontrar um elemento em uma matriz classificada. Funciona dividindo repetidamente o intervalo de pesquisa pela metade. Aqui está uma análise detalhada de sua função binarySearch:

function binarySearch(array $arr, float|int $x)
{
    $low = 0;
    $high = count($arr)-1;
    // $midIndex = (int) ($low   ($high - $low)/2);
    $i = 0;
    while($low  $arr[$midIndex]){
            $low = $midIndex  1;
            echo $low."\n";
        }else{
            $high = $midIndex - 1;
        }
    }

return "The number {$x} was not found in the array";


}

echo binarySearch([1,2,3,4,5,6,7,8,9,10,44,45,46,47,48,49,50], 45)

A função binarySearch aceita dois parâmetros:

  1. $arr: uma matriz classificada de números inteiros.
  2. $x: O número a ser pesquisado, que pode ser um float ou um inteiro.
  3. $low é inicializado no primeiro índice do array.
  4. $high é inicializado no último índice do array.
  5. $i é um contador para controlar o número de iterações.
  6. O loop while é executado enquanto o intervalo de pesquisa for válido ($low é menor ou igual a $high).
  7. $midIndex é calculado como o índice intermediário do intervalo atual.
  8. Se o elemento do meio for igual a $x, a função retorna o índice e o número de iterações.
  9. Se $x for maior que o elemento do meio, ajuste $low para midIndex 1 (estreite a pesquisa para a metade superior).
  10. Se $x for menor que o elemento do meio, ajuste $high para midIndex - 1 (estreite a pesquisa para a metade inferior).

Compreendendo a pesquisa linear em PHP

A pesquisa linear é um dos algoritmos de pesquisa mais simples usados ​​para encontrar um elemento específico em uma matriz. Vamos analisar a função linearSearch em PHP.

function linearSearch(array $arr, float|int $x)
{
    for($i=0; $i 



A função linearSearch aceita dois parâmetros:

  1. $arr: uma matriz de números inteiros.
  2. $x: O número a ser pesquisado, que pode ser um float ou um inteiro.
  3. O loop for itera sobre cada elemento do array. A função count($arr) retorna o número de elementos do array.
  4. Dentro do loop, o código verifica se o elemento atual ($arr[$i]) é igual a $x. Se uma correspondência for encontrada, ele retornará uma mensagem indicando o índice no qual o número foi encontrado.
  5. Se o loop for concluído sem encontrar o número, a função retornará uma mensagem indicando que o número não foi encontrado no array.
  6. A pesquisa linear é direta e fácil de implementar. Ele verifica sequencialmente cada elemento do array até que o elemento desejado seja encontrado ou o final do array seja alcançado. Essa abordagem é simples, mas pode ser ineficiente para matrizes grandes, pois tem uma complexidade de tempo de O(n).
Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/ayowandeapp/search-algorithms-2613?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3