您的位置:首页 > 编程语言 > PHP开发

php冒泡排序

2016-04-09 14:21 477 查看
php之冒泡排序

思路:

1. 一趟比较:从数组的左边起,依次两两比较相邻的两个元素,如果发现左边的元素大于右边的元素,则交换两个元素的位置,这样进行一趟比较后,必然有个最大值排在数组最右边;

2. 一趟比较中假如有n个数据,则两两比较的次数是n-1次,每一趟比较的数据个数都会比前一趟少一个;

3. n个数据,每一趟完成一个数据的位置排序,那么只需要n-1趟次即可确定全部数据的位置排序。

function bubbleSort($arr)
{
$len = count($arr);
//外循环决定排序的趟次
for($i=0;$i<$len-1;$i++)
{
//从数组的左边起,依次两两比较相邻的两个元素,如果发现左边的元素大于右边的元素,则交换两个元素的位置
for($j=0;$j<$len-1-$i;$j++)
{
if($arr[$j]>$arr[$j+1])
{
//交换两个元素位置
$temp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $temp;
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: