浅谈php冒泡排序


Posted in PHP onDecember 30, 2014

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分页思路以及在ZF中的使用
May 30 PHP
分享一个PHP数据流应用的简单例子
Jun 01 PHP
探讨:array2xml和xml2array以及xml与array的互相转化
Jun 24 PHP
PHP+APACHE实现网址伪静态
Feb 22 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
Mar 17 PHP
PHP实现JS中escape与unescape的方法
Jul 11 PHP
php实现多维数组排序的方法示例
Mar 23 PHP
thinkphp5.1 文件引入路径问题及注意事项
Jun 13 PHP
PDO::query讲解
Jan 29 PHP
微信推送功能实现方式图文详解
Jul 12 PHP
TP5框架实现签到功能的方法分析
Apr 05 PHP
PHP mkdir创建文件夹实现方法解析
Nov 13 PHP
制作安全性高的PHP网站的几个实用要点
Dec 30 #PHP
php读取mssql的ntext字段返回值为空的解决方法
Dec 30 #PHP
php实现Linux服务器木马排查及加固功能
Dec 29 #PHP
php连接oracle数据库及查询数据的方法
Dec 29 #PHP
php查询mssql出现乱码的解决方法
Dec 29 #PHP
php+mysql大量用户登录解决方案分析
Dec 29 #PHP
php从memcache读取数据再批量写入mysql的方法
Dec 29 #PHP
You might like
目录,文件操作详谈―PHP
2006/11/25 PHP
php生成EAN_13标准条形码实例
2013/11/13 PHP
Yii编程开发常见调用技巧集锦
2016/07/15 PHP
php数据结构之顺序链表与链式线性表示例
2018/01/22 PHP
TP5框架实现签到功能的方法分析
2020/04/05 PHP
js parseInt(&quot;08&quot;)未指定进位制问题
2010/06/19 Javascript
基于Jquery的动态创建DOM元素的代码
2010/12/28 Javascript
jQuery 获取和设置select下拉框的值实现代码
2013/11/08 Javascript
Windows系统中安装nodejs图文教程
2015/02/28 NodeJs
JS截取与分割字符串常用技巧总结
2015/11/10 Javascript
详解Jquery实现ready和bind事件
2016/04/14 Javascript
JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
2016/10/10 Javascript
react-router4 配合webpack require.ensure 实现异步加载的示例
2018/01/18 Javascript
JavaScript实现简单的文本逐字打印效果示例
2018/04/12 Javascript
微信小程序实现滑动切换自定义页码的方法分析
2018/12/29 Javascript
Vue CLI3.0中使用jQuery和Bootstrap的方法
2019/02/28 jQuery
一些手写JavaScript常用的函数汇总
2019/04/16 Javascript
怎么使用javascript深度拷贝一个数组
2019/06/06 Javascript
npm的lock机制解析
2019/06/20 Javascript
Vue 按照创建时间和当前时间显示操作(刚刚,几小时前,几天前)
2020/09/10 Javascript
python通过socket实现多个连接并实现ssh功能详解
2017/11/08 Python
python matplotlib库直方图绘制详解
2019/08/10 Python
Tostadora意大利:定制T恤
2019/04/08 全球购物
介绍一下JNDI的基本概念
2013/07/26 面试题
应聘医药代表职位求职信
2013/10/21 职场文书
最新茶叶店创业计划书
2014/01/14 职场文书
酒后驾车标语
2014/06/30 职场文书
学校运动会广播稿范文
2014/10/02 职场文书
单位工作证明
2014/10/07 职场文书
贪污检举信范文
2015/03/02 职场文书
离职证明格式样本
2015/06/12 职场文书
入党后的感想
2015/08/10 职场文书
2015年店长个人工作总结
2015/10/23 职场文书
2017寒假社会实践心得体会范文
2016/01/14 职场文书
2019年入党思想汇报
2019/03/25 职场文书
MySQL常见优化方案汇总
2022/01/18 MySQL