冒泡排序

  1. 冒泡排序:

冒泡排序:

1、基本算法思想:
l依次比较相邻的两个元素,消除逆序(逆序是数学上的概念,是成对出现的,比如50,30就是一对逆序,所谓的消除逆序,就是大的放后面,小的放前面)

l这样,一轮比较下来,最大的那个数一对是在最后面!

l然后,再继续新的一轮的比较,注意,刚才一轮后的最大值不再参与比较,这样,这一轮参与比较的数值就比上一轮少一个,如此反复,直到最后只剩下两个数值比较为止!

所以:应该是一个双重循环,外层控制轮数,内层控制每轮比较的次数!

2、示例代码:

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
27
28
29
30
31
<?php

echo '<pre>';

function maopao($arr){

for($i=1,$len=count($arr);$i<$len;$i++){

for($k=0;$k<$len-$i;$k++){

if($arr[$k]>$arr[$k+1]){

$tem = $arr[$k];

$arr[$k] = $arr[$k+1];

$arr[$k+1] = $tem;

}

}

}

return $arr;

}

$arr1 = array(78,90,67,45,23,12,34,54,32);

var_dump(maopao($arr1));

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 chaofa_vip@126.com

文章标题:冒泡排序

文章字数:274

本文作者:Hechaofa

发布时间:2016-03-22, 11:13:47

最后更新:2020-09-30, 15:44:15

原始链接:https://chaofavip.github.io/2016/03/22/php/algorithm/maopao/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏