冒泡排序法

来源:互联网 发布:数据车床编程步骤 编辑:程序博客网 时间:2024/05/21 17:03
//冒泡排序法 (排序后原数组不变)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;}


原创粉丝点击