PHP冒泡排序程序代码与源代码
发布:smiling 来源: PHP粉丝网 添加日期:2015-04-09 15:36:25 浏览: 评论:0
冒泡排序简介:冒泡排序(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; //开源软件:phpfensi.com
- 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);
- ?>
Tags: PHP冒泡排序 PHP快速排序
- 上一篇:PHP大转盘中奖概率算法与示例代码
- 下一篇:PHP小偷程序的设计与实现示例
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)