PHP实现冒泡排序的简单实例


Posted in PHP onMay 26, 2016

1、首先我们必须弄清楚什么是冒泡排序,不理解冒泡排序的原理,我们就无法写出代码。

冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。

PHP实现代码:

<?php
  
  //冒泡排序方法

  function bubblesort(&$arr){
      //定义一个变量保存交换的值
    $temp =0;
    for($i=0;$i<count($arr);$i++){
      
      for($j=0;$j<count($arr)-$i-1;$j++){
            
        if($arr[$j]>$arr[$j+1]){
          //如果前面的那个数大于后面的那个数,那么他们就进行交换
          $temp=$arr[$j];
          $arr[$j]=$arr[$j+1];
          $arr[$j+1]=$temp;
        }
      }      
    }
  }

  $arr=array(100,99,200,5,-4,6,-7);
  bubbleSort($arr);
  print_r($arr);  //数组是值传递,所以传递的时候加个&符号就是地址传递,改变外部变量


?>

以上这篇PHP实现冒泡排序的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP运行环境配置与开发环境的配置(图文教程)
Jun 04 PHP
php实现的获取网站备案信息查询代码(360)
Sep 23 PHP
javascript some()函数用法详解
Nov 13 PHP
php数组转成json格式的方法
Mar 09 PHP
php简单实现无限分类树形列表的方法
Mar 27 PHP
php实现向javascript传递数组的方法
Jul 27 PHP
如何解决phpmyadmin导入数据库文件最大限制2048KB
Oct 09 PHP
PHP扩展Memcache分布式部署方案
Dec 06 PHP
PHP基于GD库的图像处理方法小结
Sep 27 PHP
thinkPHP模板中函数的使用方法示例
Nov 30 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
PHP执行系统命令函数实例讲解
Mar 03 PHP
Laravel SQL语句记录方式(推荐)
May 26 #PHP
PHP MVC框架skymvc支持多文件上传
May 26 #PHP
CodeIgniter集成smarty的方法详解
May 26 #PHP
PHPExcel简单读取excel文件示例
May 26 #PHP
php快速排序原理与实现方法分析
May 26 #PHP
深入理解PHP中的empty和isset函数
May 26 #PHP
CodeIgniter常用知识点小结
May 26 #PHP
You might like
php遍历目录viewDir函数
2009/12/15 PHP
微信自定义菜单的处理开发示例
2015/04/16 PHP
php对xml文件的增删改查操作实现方法分析
2017/05/19 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
JS代码放在head和body中的区别分析
2011/12/01 Javascript
JQuery中使用Ajax赋值给全局变量异常的解决方法
2014/01/10 Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
2014/06/10 Javascript
点击页面任何位置隐藏div的实现方法
2016/09/05 Javascript
jquery代码规范让代码越来越好看
2017/02/03 Javascript
Avalonjs 实现简单购物车功能(实例代码)
2017/02/07 Javascript
JavaScript中splice与slice的区别
2017/05/09 Javascript
浅谈jquery fullpage 插件增加头部和版权的方法
2018/03/20 jQuery
基于JS开发微信网页录音功能的实例代码
2019/04/30 Javascript
webpack 处理CSS资源的实现
2019/09/27 Javascript
微信小程序:报错(in promise) MiniProgramError
2020/10/30 Javascript
解析Python中的生成器及其与迭代器的差异
2016/06/20 Python
Python中垃圾回收和del语句详解
2018/11/15 Python
对python opencv 添加文字 cv2.putText 的各参数介绍
2018/12/05 Python
Python3解释器知识点总结
2019/02/19 Python
详解Python做一个名片管理系统
2019/03/14 Python
PyQT5 实现快捷键复制表格数据的方法示例
2020/06/19 Python
Python中的With语句的使用及原理
2020/07/29 Python
Python基于mediainfo批量重命名图片文件
2020/12/29 Python
HTML5 script元素async、defer异步加载使用介绍
2013/08/23 HTML / CSS
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
家长对学生的评语
2014/04/18 职场文书
村庄绿化方案
2014/05/07 职场文书
会议欢迎标语
2014/06/30 职场文书
同志主要表现材料
2014/08/21 职场文书
励志广播稿300字(5篇)
2014/09/15 职场文书
失职检讨书大全
2015/01/26 职场文书
灵魂歌王观后感
2015/06/17 职场文书
Python中使用Lambda函数的5种用法
2021/04/01 Python
Go中的条件语句Switch示例详解
2021/08/23 Golang
Elasticsearch 基本查询和组合查询
2022/04/19 Python