中国网格虚拟主机不满意退款承诺!
24小时咨询热线:021-51095771  51087627
中国网格
在中国买空间 就选网格
顶级虚拟主机服务商
支付方式数 据 库优惠套餐
您当前的位置 
首页
虚拟主机
技术
正文

PHP实现冒泡排序法

发布时间:2013-3-15 10:20:10| www.cnwg.cn | 标签:PHP,冒泡排序法

冒泡排 序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较Z后两个数,将小数放前,大数放后。至此第一趟结束,将Z大的数放到了Z 后。在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第 二个数(倒数第一的位置上已经是Z大的),第二趟结束,在倒数第二的位置上得到一个新的Z大数(其实在整个数列中是第二大的数)。如此下去,重复以上过 程,直至Z终完成排序。

/*@冒泡排序算法*/
$array=array(3,45,22,11,32,28,33,56,17,21,90);
$len=count($array);//计算数组长度
for($i=0;$i<$len-1;$i++){//需要比较$len-1轮,每一轮需要比较$len-1次
for($j=0;$j<$len-1;$j++){//需要比较$len-1次,因为循环到Z后一个数时,后面没有数可以比较了,所以循环到倒数第二个数正好
$k=$j+1;//得到当前数的后一个数的下标,我们依次比较的是数组下标分别为0-1,1-2,3-4的数值对
if($array[$j]>$array[$k]){//比较两数,如果前一个数比后一个大,则交换两个数的顺序
$t=$array[$j];
$array[$j]=$array[$k];
$array[$k]=$t;
}//第一次循环比较完之后,进行下一轮比较
}
}
print_r($array);
?>

站长寄语:理解冒泡排序的关键在于,它的比较结果是大数往后放,依次得出的是Z大的数,第二大的数,第三大的数。。。依次类推


php空间

php空间

价格:80元 (全网低价)

支持PHP相关程序

参考资料

我要评价

评价发表成功

错误提示
关于网格 | 联系方式 | 网站地图 | 客户中心 | 网格招聘 | 代理合作 | 支付方式 | 帮助中心
中国网格所属上海羽灿计算机科技有限公司版权所有 Copyright©cnwg.cn 2003-2014,All Rights Reserved.

联系电话:021-51095771 021-51087627 夜间技术:021-51087637 紧急电话:18916133353 传真:021-51087637-202
版权所有:上海羽灿计算机科技有限公司 中国网格(cnwg.cn/cnwg.cc)©2003-2013 All Rights Reserved.
地址:上海市涞亭南路169弄53号 邮编:201108 ICP经营许可证编号:沪B2-20060019 沪ICP备06012189号

  • 经营性网站
    备案信息
  • 网络110
    报警服务
  • 文明办网
    先进单位
  • 支付宝
    特约商家
  • 网络社区
    征信网
  • 上海工商
    网上亮照