
1.直接插入排序代码实现:
Magic CMS网站管理系统(政企版)采用PHP+Mysql架构,再原CMS系统的基础上精简出适合企业政府客户使用版本,继承了原系统的快捷,高效,灵活,实用的特点,保留了核心功能,系统支持自定义模版(极易整合dede模板)、支持扩展插件,自定义模型等功能,保留了文章模型,视频模型,图集模型,产品模型,能够胜任企业多种建站需求。BUG修复:1.修改了程序安装时部分数据无法正常导入的错误2.修改了程
<?phpheader("content-type:text/html;charset=utf-8");
//直接插入排序实现从小到大排序//思路:每一趟排序将待排序的记录(元素)插入到前面的有序数列中,从左到右不断增大有序数列//关键:找到前面的有序数列中正确插入位置。$arr =array(6,18,2,4,16,8);
echo"<br>排序前:<br>";
print_r($arr);
insertSort($arr);
echo"<br>排序后:<br>";
print_r($arr);
functioninsertSort(&$arr)
{$len = count($arr);
//从第二个记录起,跟前面的有序数列比较寻找插入位置for($i = 1;$i < $len; $i++)
{
$insertData = $arr[$i];//要插入的记录$pos = $i;//插入位置for($j = $i - 1;$j >= 0;$j--)
{
if($arr[$j] > $insertData)//如果前面的记录大于要插入的记录
{
$arr[$j+1] = $arr[$j];//前面的记录往后移一个下标$pos--;
}
else
{
break;
}
}
$arr[$pos] = $insertData;//插入到正确位置echo"<br>第{$i}趟排序结果:";
print_r($arr);
}
}2.二分查找插入排序代码实现
<?phpheader("content-type:text/html;charset=utf-8");
//二分查找插入排序:跟直接插入排序思路差不多,不同在通过二分查找来确定插入位置$arr =array(6,18,2,4,16,8);
echo"<br>排序前:<br>";
print_r($arr);
bsInsertSort($arr);
echo"<br>排序后:<br>";
print_r($arr);
functionbsInsertSort(&$arr)
{$len = count($arr);
for($i = 1;$i < $len; $i++)
{
$left = 0;
$right = $i -1;
$mid = 0;
$insertData = $arr[$i];//要插入的记录while($left<=$right)
{
$mid = ($left + $right)/2;
if($insertData > $arr[$mid])
{
$left = $mid + 1;
}else
{
$right = $mid -1;
}
}
//$left是要插入的位置for($j=$i-1;$j>=$left;$j--)
{
$arr[$j+1] = $arr[$j];//后移比插入记录大的数
}
$arr[$left] = $insertData;
}
}').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介绍了php之插入排序,包括了插入排序,php方面的内容,希望对PHP教程有兴趣的朋友有所帮助。










