Copy CodeThe code is as follows:
Function: PHP implements various sorting algorithms
Author:windlike
datetime:2007-06-09
Bubble sort
function Bubblesort ($arr) {
$num = count ($arr);
for ($i =1; $i < $num; $i + +) {
for ($j = $num-1; $j >= $i; $j-) {
if ($arr [$j]< $arr [$j-1]) {
$iTemp = $arr [$j-1];
$arr [$j-1] = $arr [$j];
$arr [$j] = $iTemp;
}
}
}
return $arr;
}
Exchange Method Sort
function Exchangesort ($arr) {
$num = count ($arr);
for ($i =0; $i < $num-1; $i + +) {
for ($j = $i +1; $j < $num; $j + +) {
if ($arr [$j]< $arr [$i]) {
$iTemp = $arr [$i];
$arr [$i] = $arr [$j];
$arr [$j] = $iTemp;
}
}
}
return $arr;
}
Sorting by Selection method
function Selectsort ($arr) {
$num = count ($arr);
for ($i =0; $i < $num-1; $i + +) {
$iTemp = $arr [$i];
$iPos = $i;
for ($j = $i +1; $j < $num; $j + +) {
if ($arr [$j]< $iTemp) {
$iTemp = $arr [$j];
$iPos = $j;
}
}
$arr [$iPos] = $arr [$i];
$arr [$i] = $iTemp;
}
return $arr;
}
Insert Method Sort
function Insertsort ($arr) {
$num = count ($arr);
for ($i =1; $i < $num; $i + +) {
$iTemp = $arr [$i];
$iPos = $i-1;
while (($iPos >=0) && ($iTemp < $arr [$iPos]) {
$arr [$iPos +1] = $arr [$iPos];
$iPos--;
}
$arr [$iPos +1] = $iTemp;
}
return $arr;
}
Quick Sort
function QuickSort ($arr) {
$num = count ($arr);
$l = $r = 0;
for ($i =1; $i < $num; $i + +) {
if ($arr [$i] < $arr [0]) {
$left [] = $arr [$i];
$l + +;
}else{
$right [] = $arr [$i];
$r + +;
}
}
if ($l > 1) {
$left = QuickSort ($left);
}
$new _arr = $left;
$new _arr[] = $arr [0];
if ($r > 1) {
$right = QuickSort ($right);
}
for ($i =0; $i < $r; $i + +) {
$new _arr[] = $right [$i];
}
return $new _arr;
}
$arr = Array (7,1,6,5,2);
$arr _new = QuickSort ($arr);
echo "
echo "
";
?>
The above introduces the calculation method of ovulation period PHP various sorting algorithm implementation code, including the ovulation period of the calculation method of content, I hope that the PHP tutorial interested in a friend helpful.