"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Algoritmos de búsqueda

Algoritmos de búsqueda

Publicado el 2024-07-31
Navegar:810

Search Algorithms

Comprender la búsqueda binaria en PHP

La búsqueda binaria es un algoritmo más eficiente para encontrar un elemento en una matriz ordenada. Funciona dividiendo repetidamente el intervalo de búsqueda por la mitad. Aquí hay un desglose detallado de su función de búsqueda binaria:

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)

La función binarioSearch acepta dos parámetros:

  1. $arr: una matriz ordenada de números enteros.
  2. $x: El número a buscar, que puede ser un flotante o un número entero.
  3. $low se inicializa en el primer índice de la matriz.
  4. $high se inicializa en el último índice de la matriz.
  5. $i es un contador para realizar un seguimiento del número de iteraciones.
  6. El bucle while se ejecuta mientras el intervalo de búsqueda sea válido ($bajo es menor o igual que $alto).
  7. $midIndex se calcula como el índice medio del intervalo actual.
  8. Si el elemento del medio es igual a $x, la función devuelve el índice y el número de iteraciones.
  9. Si $x es mayor que el elemento medio, ajuste $low a midIndex 1 (restringe la búsqueda a la mitad superior).
  10. Si $x es menor que el elemento del medio, ajuste $high a midIndex - 1 (restringe la búsqueda a la mitad inferior).

Comprender la búsqueda lineal en PHP

La búsqueda lineal es uno de los algoritmos de búsqueda más simples que se utilizan para encontrar un elemento particular en una matriz. Analicemos la función linearSearch en PHP.

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



La función linearSearch acepta dos parámetros:

  1. $arr: una matriz de números enteros.
  2. $x: El número a buscar, que puede ser un flotante o un número entero.
  3. El bucle for itera sobre cada elemento de la matriz. La función count($arr) devuelve el número de elementos de la matriz.
  4. Dentro del bucle, el código verifica si el elemento actual ($arr[$i]) es igual a $x. Si se encuentra una coincidencia, devuelve un mensaje indicando el índice en el que se encontró el número.
  5. Si el ciclo se completa sin encontrar el número, la función devuelve un mensaje indicando que el número no se encontró en la matriz.
  6. La búsqueda lineal es sencilla y fácil de implementar. Comprueba secuencialmente cada elemento de la matriz hasta encontrar el elemento deseado o llegar al final de la matriz. Este enfoque es simple pero puede resultar ineficiente para matrices grandes, ya que tiene una complejidad temporal de O(n).
Declaración de liberación Este artículo se reproduce en: https://dev.to/ayowandeapp/search-algorithms-2613?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3