//冒泡排序法 (排序后原数组不变)
function bubbleSort($myarr){
$temp=0;//这是一个中间变量
//需求是把数组从小到大排序
for($i=0;$i<count($myarr)-1;$i++){
for($j=0;$j<count($myarr)-$i-1;$j++){
if($myarr[$j]>$myarr[$j+1]){
$temp=$myarr[$j];
$myarr[$j]=$myarr[$j+1];
$myarr[$j+1]=$temp;
}
}
}
return $myarr;
}
//冒泡排序法 (排序后原数组变为有顺序的数组)
function bubbleSort1(&$myarr){
$temp=0;//这是一个中间变量
//需求是把数组从小到大排序
for($i=0;$i<count($myarr)-1;$i++){
for($j=0;$j<count($myarr)-$i-1;$j++){
if($myarr[$j]>$myarr[$j+1]){
$temp=$myarr[$j];
$myarr[$j]=$myarr[$j+1];
$myarr[$j+1]=$temp;
}
}
}
return $myarr;
}
//优化后的冒泡排序法
function bubbleSort2($myarr){
$temp=0;//这是一个中间变量
//需求是把数组从小到大排序
$flag=false;
for($i=0;$i<count($myarr)-1;$i++){
for($j=0;$j<count($myarr)-$i-1;$j++){
if($myarr[$j]>$myarr[$j+1]){
$temp=$myarr[$j];
$myarr[$j]=$myarr[$j+1];
$myarr[$j+1]=$temp;
$flag=true;
}
}
if(!$flag){
//已经是有序的了
break;
}
$flag=false;
}
return $myarr;
}
10-31