欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

在PHP中如何使用冒泡排序?

程序员文章站 2022-03-22 23:15:27
...
上篇文章给大家介绍了《PHP中什么是错误处理?错误代号?错误触发?》,本文继续给大家介绍在PHP中如何使用冒泡排序?有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

在PHP中如何使用冒泡排序?

数组排序算法.

冒泡排序

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。

它重复地走访边要排序的数列,-次比较两个元素,如果他们的顺序错误就把他们交换过来。

走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成

冒泡排序的算法思路:。

1)比较相邻的元素。 如果第一一个比第二个大,就交换他们两个。。

2)对每一对相邻元素作同样的工作,从开始第-对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

3)针对所有的元素重以上的步骤,除了最后一个。。

4)持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

首先我们先定义一个数组,然后我们想办法把最大的值放在最右边去,我们使用for循环,我们以代码为例,如下:

<?php 
//数组排序算法:冒泡排序
$arr = array(1,4,2,9,7,5,8);
//想办法将最大的值放到最右边去
for($j =0,$len = count($arr); $j < $len - 1;$j++){
//判断:两两相比
if($arr[$j] > $arr[$j+1]){
//左边比右边大:交换
$temp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $temp;
 }
}
echo '<pre>';
print_r($arr);

运行结果如下:

在PHP中如何使用冒泡排序?

那么此时我们该如何让上述代码在运行一次,我们让下面可以每次找出最大值的代码重复执行。

<?php 
//数组排序算法:冒泡排序
$arr = array(1,4,2,9,7,5,8);
for($i=0,$len = count($arr);$i < $len;$i++){
//想办法将最大的值放到最右边去
for($j =0,$len = count($arr); $j < $len - 1;$j++){
//判断:两两相比
if($arr[$j] > $arr[$j+1]){
//左边比右边大:交换
$temp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $temp;
 }
}
echo '<pre>';
print_r($arr);
}

运行结果如下:

在PHP中如何使用冒泡排序?

推荐学习:《PHP视频教程

以上就是在PHP中如何使用冒泡排序?的详细内容,更多请关注其它相关文章!

相关标签: 冒泡排序