浅谈php冒泡排序

 更新时间:2014年12月30日 10:30:06   投稿:hebedich  
这篇文章主要介绍了浅谈php冒泡排序,需要的朋友可以参考下

PHP实现的代码先奉上:

复制代码 代码如下:

function bubble_sort($array) {
    for ($i = 0; $i < count($array) - 1; $i++) {    //$i为已经排过序的元素个数
        for ($j = 0; $j < count($array) - 1 - $i; $j++) {    //$j为需要排序的元素个数,用总长减去$i
            if ($array[$j] > $array[$j + 1]) {    //按升序排序
                $temp = $array[$j];
                $array[$j] = $array[$j + 1];
                $array[$j + 1] = $temp;
            }
        }
    }
    return $array;
}

$a = array(5, 1, 4, 7);

代码执行过程:

复制代码 代码如下:

i = 0;
  j = 0;
  if($arr[0] > $arr[1]) => 5 > 1 条件成立,交换位置,形成新的数组 =>  1 5 4 7  j++
  if($arr[1] > $arr[2]) => 5 > 4 条件成立,交换位置, 形成新的数组 =>  1 4 5 7  j++
  if($arr[2] > $arr[3]) => 5 > 7 条件不成立 ,数组保持不变 , 1 4 5 7 j++ j=3 退出内层循环, i++

依次类推吧。

相关文章

  • PHP实现数据分页显示的简单实例

    PHP实现数据分页显示的简单实例

    下面小编就为大家带来一篇PHP实现数据分页显示的简单实例。小编觉得挺不错的,现在就分享给大家,也给的大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • Laravel 5 框架入门(一)

    Laravel 5 框架入门(一)

    本文给大家介绍的是Laravel5框架入门的第一篇文章,主要给大家介绍些基础的知识,包括安装配置,数据库的建立与迁移,模型介绍,是篇非常不错的入门文章,这里推荐给大家。
    2015-04-04
  • yii上传文件或图片实例

    yii上传文件或图片实例

    最近在看yii,yii有自带上传图片的方法。简单的贴代码。分为两块,第一块view:test.php。第二块是controller:TestController.php
    2014-04-04
  • YII框架页面缓存操作示例

    YII框架页面缓存操作示例

    这篇文章主要介绍了YII框架页面缓存操作,结合实例形式分析了Yii框架页面缓存的开启、关闭、设置等相关功能与实现技巧,需要的朋友可以参考下
    2019-04-04
  • yii2.0整合阿里云oss的示例代码

    yii2.0整合阿里云oss的示例代码

    本篇文章主要介绍了yii2.0整合阿里云oss的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 修改apache配置文件去除thinkphp url中的index.php

    修改apache配置文件去除thinkphp url中的index.php

    这篇文章主要介绍了修改apache配置文件去除thinkphp url中的index.php的方法,大家参考使用吧
    2014-01-01
  • 2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题

    2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题

    大家可能都用过in_array来判断一个数据是否在一个数组中,一般我们的数组可能数据都比较小,对性能没什么影响,所以也就不会太在意
    2014-04-04
  • windows7下安装php的php-ssh2扩展教程

    windows7下安装php的php-ssh2扩展教程

    这篇文章主要介绍了windows7下安装php的php-ssh2扩展教程,本文同时适用XP系统,但Win8没有测试过,需要的朋友可以参考下
    2014-07-07
  • Zend Framework创建自己的动作助手详解

    Zend Framework创建自己的动作助手详解

    这篇文章主要介绍了Zend Framework创建自己的动作助手实现方法,结合实例形式分析了基于助手的抽象基类Zend_Controller_Action_Helper_Abstract实现自定义动作助手的相关技巧,需要的朋友可以参考下
    2016-03-03
  • ThinkPHP分页类使用详解

    ThinkPHP分页类使用详解

    当网站的留言内容越来越多的时候,分页功能的应用就应运而生了,本文我们就来重点讲解下ThinkPHP框架自带的分页类的调用
    2014-03-03

最新评论