• 微信号
  • 微信号
目录

PHP基础

您当前的位置:首页 > 我的笔记 > PHP基础>数组排序

上一篇: 数组元素查找

下一篇: 数组遍历

数组排序

在操作数组时,经常需要对数组元素进行排序。比较常见的的排序算法——冒泡排序。在整个不断地比较数组中的相邻的连个元素,较小者向上浮,较大者往下沉,整个过程和水中的气泡上升原理相识。

冒泡排序的整个过程如下:

*步:从*个元素开始,将相邻的两个元素进行比较,知道*后两个元素完成比较。如果前一个元素比后一个元素打,则交换它们的位置。整个过程完成后,数组中*后一个元素自然就是*大值,这样也就完成了*轮比较。

第二步:除了*后一个元素,将剩余的元素继续进行两两比较,过程与*个步相识,这样就可以将数组中第二大的数放在了倒数第二个位置。

第三步:依次类推,持续对元素进行两两比较,知道没有任何一个元素需要比较为止。

案例

<?php 
 //把冒泡排序封装成函数 
 function bubbleSort($arr){ 
 $temp=0; //这是一个中间变量 
 $len=count($arr); //计算数组的长度 
 for($i=0; $i<$len-1; $i++){ //把数组从小到大进行排序 
 for($j=0;$j<$len-1-$i; $j++){ 
 if($arr[$j]>$arr[$j+1]){ //如果前面的数比后面的数大,就进行交换 
 $temp=$arr[$j]; 
 $arr[$j]=$arr[$j+1]; 
 $arr[$j+1]=$temp; 
 } 
 } 
 } 
 return $arr; 
 } 
 $arr=array(9,8,3,6,2); 
 echo "<pre>"; 
 print_r(bubbleSort($arr)); 
 echo "</pre>"; 
 
?>

运行结果

上一篇: 数组元素查找

下一篇: 数组遍历