Heim > Backend-Entwicklung > PHP-Tutorial > 又一个PHP实现的冒泡排序算法分享_php实例

又一个PHP实现的冒泡排序算法分享_php实例

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-07 17:16:40
Original
957 Leute haben es durchsucht

经典的冒泡排序法一直是许多程序沿用的其中一种排序法,话说冒泡排序法在效率上比PHP系统函数sort更高效。本章不讨论性能,所以就不拿它来跟系统性能做对比了。

冒泡排序大概的意思是依次比较相邻的两个数,然后根据大小做出排序,直至最后两位数。由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒泡排序。但其实在实际过程中也可以根据自己需要反过来用,大树往前放,小数往后放。

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

32

33

34

35

36

37

<&#63;php

/**

 * PHP中的冒泡排序法使用

 */

  

// 预先声明一个数组

$arr = array (12,45,28,30,88,67);

echo "原数组";

print_r($arr);

echo "<br/>";

//冒泡排序

function maopao($arr){

  // 进行第一层遍历

  for($i=0,$k=count($arr);$i<$k;$i++) {

    // 进行第二层遍历 将数组中每一个元素都与外层元素比较

    // 这里的i+1意思是外层遍历当前元素往后的

    for ($j=$i+1;$j<$k;$j++) {

      // 内外层两个数比较

        if($arr[$i]<$arr[$j]){

        // 先把其中一个数组赋值给临时变量

          $temp = $arr[$j];

        // 交换位置

        $arr[$j] = $arr[$i];

        // 再从临时变量中赋值回来

        $arr[$i] = $temp;

      }

    }

  }

  // 返回排序后的数组

  return $arr;

}

  

// 直接打印排序后的数组

echo '排序后';

print_r(maopao($arr));

  

&#63;>

Nach dem Login kopieren

通过以上代码执行结果

原数组

复制代码 代码如下:
Array ( [0] => 12 [1] => 45 [2] => 28 [3] => 30 [4] => 88 [5] => 67 )

排序后
复制代码 代码如下:
Array ( [0] => 88 [1] => 67 [2] => 45 [3] => 30 [4] => 28 [5] => 12 )

这就是冒泡法实例,简单吧!没有神马难度的。
Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage