php冒泡排序 只能是升序吗

2024-11-30 06:43:47
推荐回答(1个)
回答1:

  冒泡排序实现原理
  ① 首先将所有待排序的数字放入工作列表中。
② 从列表的第一个数字到倒数第二个数字,逐个检查:若某一位上的数字大于他的下一位,则将它与它的下一位交换。
  ③ 重复步骤②,直至再也不能交换。
  代码实现
   代码如下:

function bubbingSort(array $array)
{
for($i=0, $len=count($array)-1; $i<$len; ++$i)
{
for($j=$len; $j>$i; --$j)
{
if($array[$j] < $array[$j-1])
{
$temp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $temp;
}
}
}
return $array;
}

print '

';
print_r(bubbingSort(array(1,4,22,5,7,6,9)));
print '
';
  快速排序实现原理
采用分治的思想:先保证列表的前半部分都小于后半部分,然后分别对前半部分和后半部分排序,这样整个列表就有序了。