//从小到大排序
/*
eg:$arr=array(3,4,2,50,30)
从$arr[0]开始,比较相邻的两个元素之间的值大小(第一次比较5个数值,要比较4次才能比较出最大的一位),如果$arr[0]>$arr[1],互换$arr[0]和$arr[1]的位置,以此类推(接着比较$arr[1]和$arr[2],$arr[2]和$arr[3],$arr[3]和$arr[4]),直到比较完$arr[3]和$arr[4]的值大小,确定最大的数值排到最后一位.
接着比较剩下来的4个数值的大小(4个数值要比较3次才能比较出最大的一位),继续从$arr[0]开始比较,比较 $arr[0]和$arr[1]; $arr[1]和$arr[2]; $arr[2]和$arr[3]; 确定最大的数值排到倒数第二位;
......
*/
//代码实现
<?php
//从小到大排序
$arr=array(3,4,2,50,30);
for($i=0;$i<count($arr)-1;$i++){
for($j=0;$j<count($arr)-1-$i;$j++){
if($arr[$j]>$arr[$j+1]){
$temp=$arr[$j];
$arr[$j]=$arr[$j+1];
$arr[$j+1]=$temp;
}
}
}
var_dump($arr);
?>
//从大到小排序/*
从数组最后一位开始,比较$arr[4]和$arr[3]; $arr[3]和$arr[2]; $arr[2]和$arr[1]; $arr[1]和$arr[0]; 比较下来,$arr[0]的位置就是最大的数值.
接着比较剩下的4个数,和上面从小到大类似......
<?php
$arr=array(3,4,2,50,30)
for($i=count($arr)-1;$i>0;$i--){
for($j=count($arr)-1;$j>count($arr)-1-$i;$j--){
if($arr[$j]>$arr[$j-1]){
$temp=$arr[$j];
$arr[$j]=$arr[$j-1];
$arr[$j-1]=$temp;
}
}
}
var_dump($arr);
?>