Maison  >  Article  >  développement back-end  >  Résumer les méthodes d'implémentation de trois algorithmes PHP courants

Résumer les méthodes d'implémentation de trois algorithmes PHP courants

PHPz
PHPzoriginal
2023-04-03 17:55:40814parcourir

PHP est un langage de script puissant largement utilisé dans le domaine du développement Web. En plus d'être utilisé dans le développement de sites Web, PHP peut également être utilisé pour implémenter divers algorithmes et structures de données. Dans cet article, nous présenterons trois algorithmes courants, notamment le tri à bulles, le tri rapide et la recherche binaire, et comment les implémenter en PHP.

1. Tri à bulles

Le tri à bulles est un algorithme de tri simple qui réalise le tri en comparant constamment les éléments adjacents et en les échangeant dans l'ordre. La complexité temporelle de cet algorithme est O(n^2), où n est la longueur du tableau.

En PHP, nous pouvons utiliser le code suivant pour implémenter le tri à bulles :

function bubbleSort($arr) { 
  $len = count($arr); 
  for ($i = 0; $i < $len; $i++) { 
    for ($j = $len - 1; $j > $i; $j--) { 
      if ($arr[$j] < $arr[$j - 1]) { 
        $temp = $arr[$j]; 
        $arr[$j] = $arr[$j - 1]; 
        $arr[$j - 1] = $temp; 
      } 
    } 
  } 
  return $arr; 
}

2. Tri rapide

Le tri rapide est un algorithme de tri efficace qui divise d'abord le tableau en deux sous-tableaux, plus petit et plus grand, puis. triez-les de manière récursive. La complexité temporelle de cet algorithme est O(nlogn), où n est la longueur du tableau.

En PHP, nous pouvons utiliser le code suivant pour implémenter un tri rapide :

function quickSort($arr) { 
  if (count($arr) <= 1) { 
    return $arr; 
  } 
  $pivot = $arr[0]; 
  $left = array(); 
  $right = array(); 
  for ($i = 1; $i < count($arr); $i++) { 
    if ($arr[$i] < $pivot) { 
      $left[] = $arr[$i]; 
    } else { 
      $right[] = $arr[$i]; 
    } 
  } 
  return array_merge(quickSort($left), array($pivot), quickSort($right)); 
}

3. Recherche binaire

La recherche binaire est un algorithme de recherche efficace qui divise un tableau ordonné en deux sous-tableaux, plus petits et plus grands, et de manière récursive. recherche le sous-tableau où se trouve l'élément cible jusqu'à ce que l'élément cible soit trouvé ou qu'il soit déterminé que l'élément cible n'existe pas. La complexité temporelle de cet algorithme est O(logn), où n est la longueur du tableau.

En PHP, nous pouvons utiliser le code suivant pour implémenter la recherche binaire :

function binarySearch($arr, $target) {
  $left = 0;
  $right = count($arr) - 1;
  while ($left <= $right) {
    $mid = floor(($left + $right) / 2);
    if ($arr[$mid] == $target) {
      return $mid;
    } else if ($arr[$mid] > $target) {
      $right = $mid - 1;
    } else {
      $left = $mid + 1;
    }
  }
  return -1;
}

En résumé, PHP peut non seulement être utilisé pour implémenter le développement de sites Web, mais peut également être utilisé pour implémenter divers algorithmes et structures de données. Dans le développement réel, nous pouvons choisir des algorithmes et des structures de données appropriés en fonction des besoins réels pour optimiser les performances et l'efficacité du programme.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn