php实现冒泡排序


一个程序应包括:
数据的描述:在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)。
操作的描述:即操作步骤,也就是算法(algorithm)。
Nikiklaus Wirth提出的公式:程序=数据结构+算法
作为一个程序员必须得懂点算法啊,就从最简单的开始吧=>冒泡排序

维基百科的说法

冒泡排序(英语:Bubble Sort,台湾另外一种译名为:泡沫排序)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
冒泡排序图片
我理解冒泡排序就是小学生排队,你比我个子矮(数字小),你就站我前面(浮上去),直到找到比我个子高那个,我站在他的前面,他继续往后面比个子!
直接上PHP代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?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冒泡排序运行结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值