内容简介:PHP实现冒泡排序
一个程序应包括:
对数据的描述:在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)。
对操作的描述:即操作步骤,也就是算法(algorithm)。
Nikiklaus Wirth提出的公式:程序=数据结构+算法
作为一个屌丝 程序员 必须得懂点算法啊,就从最简单的开始吧=> 冒泡排序
维基百科的说法
冒泡排序(英语:Bubble Sort,台湾另外一种译名为:泡沫排序)是一种简单的 排序 算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
冒泡排序图片
我理解冒泡排序就是小学生排队,你比我个子矮(数字小),你就站我前面(浮上去),直到找到比我个子高那个,我站在他的前面,他继续往后面比个子!
直接上 PHP 代码
<?php /** * User: wujunze * Email: itwujunze@163.com * Blog: https://wujunze.com * Date: 2016/8/25 * */ $arr = array(1, 43, 54, 72, 21, 66, 32,55,11, 78, 36, 76, 39,88); function getpao($arr) { $len = count($arr); //设置一个空数组 用来接收冒出来的泡 //该层循环控制 需要冒泡的轮数 for ($i = 1; $i < $len; $i++) { //该层循环用来控制每轮 冒出一个数 需要比较的次数 for ($k = 0; $k < $len - $i; $k++) { if ($arr[$k] > $arr[$k + 1]) { $tmp = $arr[$k + 1]; $arr[$k + 1] = $arr[$k]; $arr[$k] = $tmp; } } } return $arr; } var_dump(getpao($arr));
运行结果
PHP冒泡排序运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP和MySQL Web开发(原书第4版)
Luke Welling、Laura Thomson / 武欣 / 机械工业出版社 / 2009 / 95.00元
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。. 本书是第4版,经过了全面的更新、重写和扩展,包括PHP 5.3最新改进的特性(例如,更好的错误和异常处理),MySQL的存储过程和存储引擎,Ajax技术与Web 2.0以及Web应用需要......一起来看看 《PHP和MySQL Web开发(原书第4版)》 这本书的介绍吧!