首页 > php开发 > PHP冒泡排序程序代码与源代码

PHP冒泡排序程序代码与源代码

冒泡排序简介:冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.

走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成,这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端,故名.

冒泡排序算法的运作原理:比较相邻的元素,如果第一个比第二个大,就交换他们两个,对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,在这一点,最后的元素应该会是最大的数.

针对所有的元素重复以上的步骤,除了最后一个,持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较.

PHP代码实例:

$a=array('3','8','1','4','11','7'); 
print_r($a); 
$len = count($a); 
//从小到大 
for($i=1;$i<$len;$i++) 
{ 
	for($j=$len-1;$j>=$i;$j--) 
	if($a[$j]<$a[$j-1]) 
	{//如果是从大到小的话,只要在这里的判断改成if($b[$j]>$b[$j-1])就可以了 
		$x=$a[$j]; 
		$a[$j]=$a[$j-1]; 
		$a[$j-1]=$x; 
	 } 
}

再看一个,代码如下:

<?php 
#冒泡排序法 
$arr = array(12,45,89,3,24,55,223,76,22,11,89,2,4,5,28,112,20,434,23,65,65,765,6,8,23,5,33,553,45,423,64,77,84,23); 
$tmp;   
for($i=0;$i<count($arr)-1;$i++ ){        
	for($j=0;$j<count($arr)-1-$i;$j++){  
		if($arr[$j] > $arr[$j+1]){ 
			$tmp = $arr[$j]; 
			$arr[$j] = $arr[$j+1]; 
			$arr[$j+1] = $tmp; 
		}  
	} 
} 
print_r($arr); 	


本文地址:http://www.phprm.com/develop/fs9136.html

转载随意,但请附上文章地址:-)

标签:php冒泡排序 php快速排序

相关文章

发表留言