冒泡排序算法是最基本的c語言算法之一,作為萬能小強php實現起來自然也不成問題。
/*
* bubblesort() 冒泡排序算法
* 雖然簡單但效率不高^_^
*
*/
function bubblesort( &$a1 )
{
if ( !is_array($a1) )
{ return false; }
$len = count($a1);
// go down array and get an element
for( $i = 0; $i < $len; $i++ )
{
// check everything above element
// if we are larger than swap it
// with that one
for ( $j = ($i+1); $j < $len; $j++ )
{
if ( $a1[$i] > $a1[$j] )
{ swap( $a1[$i], $a1[$j] ); }
}
// at this point the position at $i is the smallest
// go to the next one
}
return true;
}
if ( !function_exists('swap') )
{
// quess what this function is for
function swap( &$a, &$b )
{
$h = $a;
$a = $b;
$b = $h;
}
}