发布时间:2022-07-05 文章分类:PHP 知识 投稿人:李佳 字号: 默认 | | 超大 打印

php中的算法有哪些?

算法的使用,在实例操作中还是不明显的,但是在面试中,那就是座上宾客,经常能在面试中被遇到,最常见的问题也是排序算法和查找算法,另外还有字符串的处理以及数组处理也是经常被问到的话题,下面就部分常见的算法的问题,给大家简单介绍这些常见的算法基本使用,大家可以补全学习哦~

1、快速排序

实例演示:

<?php
functionquickSort($arr)
{
$count=count($arr);
if($count<=1){
return$arr;
}
$index=$arr[0];
$left=[];
$right=[];
for($i=1;$i<$count;$i++){
if($arr[$i]<$index){
$left[]=$arr[$i];
}else{
$right[]=$arr[$i];
}
}
$left=quickSort($left);
$right=quickSort($right);
returnarray_merge($left,[$arr[0]],$right);
}
$arrtest=[12,43,54,33,23,14,44,53,10,3,56];
$res=quickSort($arrtest);
var_dump($res);

2、冒泡排序

<?php
functionbubbleSort($arr)
{
$count=count($arr);
for($i=1;$i<$count;$i++){
for($j=0;$j<$count-$i;$j++){
if($arr[$j]>$arr[$j+1]){
$temp=$arr[$j];
$arr[$j]=$arr[$j+1];
$arr[$j+1]=$temp;
}

3、快速查找

<?php
functiongetQuick($arr)
{
$len=count($arr);
if($len<=1){
return$arr;
}
$num=$arr[0];
$big=array();
$small=array();
foreach($arras$v){
if($v>$num)
$big[]=$v;
if($v<$num)
$small[]=$v;
}