七大排序问题之冒泡排序(PHP版)
来源:互联网 发布:办公室网络架构 编辑:程序博客网 时间:2024/05/23 13:09
<?php function bubbleSort(&$array){ for($i=0;$i<count($array);$i++) { for($j=$i+1;$j<count($array);$j++) { if($array[$i] > $array[$j]) { /* $temp=$array[$i]; $array[$i]=$array[$j]; $array[$j]=$temp; */ swap($array[$i],$array[$j]); } } dispalay($array); } } $arr=array("1","5","9","6","8","2","3","4","7"); function swap(&$i,&$j) { $temp=$i;$i=$j;$j=$temp; } function dispalay(&$array) { for($i=0;$i<count($array);$i++) { echo $array[$i].":"; } echo "\n"; } bubbleSort($arr);
结果如下:
1:5:9:6:8:2:3:4:7:
1:2:9:6:8:5:3:4:7:
1:2:3:9:8:6:5:4:7:
1:2:3:4:9:8:6:5:7:
1:2:3:4:5:9:8:6:7:
1:2:3:4:5:6:9:8:7:
1:2:3:4:5:6:7:9:8:
1:2:3:4:5:6:7:8:9:
1:2:3:4:5:6:7:8:9:
结果分析:
1.原始序列(1,5,9,6,8,2,3,4,7)第一趟,以原始系列第一个元素为基准,若在其他元素中发现更小的元素,则交换
2.第二趟以系列(1,5,9,6,8,2,3,4,7)的第二个元素为基准,若在第二个元素以后的元素中发现更小的元素,则交换
3.第三趟以系列(1:2:9:6:8:5:3:4:7)的第三个元素为基准,若在第三个元素以后的元素中发现更小的元素,则交换
0 0
- 七大排序问题之冒泡排序(PHP版)
- 七大排序问题之归并排序(PHP版)
- 七大排序问题之插入排序(PHP版)
- 七大排序问题之简单选择排序(PHP版)
- 七大排序算法系列之冒泡排序
- 七大排序算法之冒泡排序
- 七大排序问题之快速排序(参考算法导论PHP版)
- 七大经典排序【 交换排序】之冒泡排序
- 七大经典算法之冒泡排序
- PHP 之 冒泡排序
- PHP之冒泡排序
- php算法之冒泡排序
- PHP之冒泡法排序
- 七大排序之希尔排序
- 七大排序之归并排序
- 七大排序之快速排序
- 七大排序之堆排序
- 数据结构和算法系列5 七大排序之冒泡排序和快速排序
- maven 安装
- linux实战(二)----shell脚本监控实例-----日志截取三个命令在性能监控等运用中的实例解析
- 跨平台APP----使用DCloud公司产品跨平台开发(系列三)
- 使用JS实现打印功能2
- Hive 内建操作符与函数开发——深入浅出学Hive
- 七大排序问题之冒泡排序(PHP版)
- YTU 2912: 圆柱体的C++
- Android Spannable
- android handler的警告Handler Class Should be Static or Leaks Occur
- 5.7. More on Conditions(有关控制的更多内容)
- qss 语句
- linux安装apache
- maven pom.xml
- 用 Github + Jekyll 写博客