本文作者:心月

实例演示冒泡排序的实现过程

心月IT博客 2020-01-08
实例演示冒泡排序的实现过程摘要:冒泡排序,相信对于编程人员来说并不陌生。它的排序原理:对一组数据,比较相邻数据的大小,将值小数据在前面,值大的数据放在后面。

        冒泡排序,相信对于编程人员来说并不陌生。冒泡排序算法简单来说就是依次比较相邻的两个数,然后根据大小做出排序,直至最后。

        那么之所以称为“冒泡排序”算法是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同水中的气泡最终会上浮到顶端一样。

        冒泡排序算法原理:对一组数据,比较相邻数据的大小,将值小数据在前面,值大的数据放在后面。

        下面我们就结合具体的代码示例,给大家介绍PHP冒泡排序算法的实现。(以下是升序排列,即从小到大排列)

代码示例如下:

<?php
function maopao($arr){
    $len = count($arr);
    for($k=0;$k<=$len;$k++)
    {
        for($j=$len-1;$j>$k;$j--){
            if($arr[$j]<$arr[$j-1]){
                $temp = $arr[$j];
                $arr[$j] = $arr[$j-1];
                $arr[$j-1] = $temp;
            }
        }
    }
    return $arr;
}
$arr = [12,7,-1,5,2,33,5,9,231,13];
 
var_dump(maopao($arr));

QQ截图20200108150319.jpg

        从冒泡排序算法的原理及上面的代码以、下面的排序图解(一次排序过程),可以发现它的核心点:比较,然后交换位置,由于在代码中并不能直接交换两个变量的值,因此需要引入一个中间变量来承接其中的一个值才能实现两个变量值的交换。

冒泡排序过程图解

冒泡排序算法一次排序图解

文章版权及转载声明:

本文由 心月IT技术博客 博主整理于 2020-01-08
若转载请注明原文及出处:https://www.xinyueseo.com/algorithm/591.html

分享到:
赞(
发表评论
快捷输入:

验证码

    评论列表 (有 0 条评论,人围观)参与讨论