PHP版本常用的排序算法汇总
发布时间:2020-12-12 21:13:51 所属栏目:PHP教程 来源:网络整理
导读://1、冒泡排序 //2、归并排序 //归并排序主程序 function al_merge_sort($arr) { $len = count($arr); if ($len = 1) { return $arr; //递归结束条件,到达这步的时候,数组就只剩下一个元素了,也就是分离了数组 } $mid = intval($len / 2); //取数组中间 $lef
//1、冒泡排序 //2、归并排序 //归并排序主程序
function al_merge_sort($arr) { $len = count($arr); if ($len <= 1) { return $arr; //递归结束条件,到达这步的时候,数组就只剩下一个元素了,也就是分离了数组 } $mid = intval($len / 2); //取数组中间 $left_arr = array_slice($arr,$mid); //拆分数组0-mid这部分给左边left_arr $right_arr = array_slice($arr,$mid); //拆分数组mid-末尾这部分给右边right_arr $left_arr = al_merge_sort($left_arr); //左边拆分完后开始递归合并往上走 $right_arr = al_merge_sort($right_arr); //右边拆分完毕开始递归往上走 $arr = al_merge($left_arr,$right_arr); //合并两个数组,继续递归 return $arr; } $arr = array(12,5,4,7,8,3,2,6,9); //3、二分查找-递归 //4、二分查找-非递归 //5、快速排序 //6、选择排序 //7、插入排序 $tmp) {
$arr[$j+1]=$arr[$j];
$arr[$j]=$tmp;
$j--;
if($j<0)
break;
}
}
return $arr;
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |