[php]数据结构&算法(PHP描述) 冒泡排序 bubble sort
2011-07-08 23:50
519 查看
<?php /** * 冒泡排序 bubble sort * * 原理:多次循环进行比较,每次比较时将最大数移动到最上面。每次循环时,找出剩余变量里的最大值,然后减小查询范围。这样经过多次循环以后,就完成了对这个数组的排序 */ function sort_bubble($list) { $len=count($list); if(empty($len)) return$list; $is_change=false; for($i=0;$i<$len; $i++) { for($j=$i+1; $j<$len; $j++) { $flag=''; if($list[$i] >$list[$j]) // 从小到大 //if($list[$i] < $list[$j]) // 从大到小 { $tmp=$list[$i]; $list[$i] =$list[$j]; $list[$j] =$tmp; $is_change=true; // 进行了交换 $flag=" change"; } echoimplode(',',$list).$flag."<br/>"; } if(!$is_change) { // 如果第一轮没有发生值交换的话,说明传入的数组是顺序,不需要再进行排序了 break; } echo"-------------------------<br/>"; } return$list; } $list=array(4,3,2,1,5,7,3,7); $list= sort_bubble($list);
根据 @楚风 提示修改了一下 如果第一轮没有发生值交换的话 跳出; 2011-07-26
相关文章推荐
- PHP 数据结构 算法描述 冒泡排序 bubble sort
- [php]数据结构&算法(PHP描述) 三元组 Triplet
- 数据结构&算法(PHP描述) 冒泡排序 bubble sort
- PHP 数据结构 算法描述 冒泡排序 bubble sort
- [php]数据结构&算法(PHP描述) 半折插入排序 straight binary sort
- [php]数据结构&算法(PHP描述) 简单选择排序 simple selection sort
- [php] 数据结构&算法(PHP描述) 查找&&二分法查找
- [php] 数据结构&算法(PHP描述) 快速排序 quick sort
- Java数据结构及算法实例:冒泡排序 Bubble Sort
- 【数据结构与算法】冒泡排序
- Java中的经典算法之冒泡排序(Bubble Sort)
- 【数据结构与算法】内部排序之二:冒泡排序和选择排序(改进优化,附完整源码)
- 内部排序冒泡排序、插入排序、选择排序、快速排序的算法和PHP实现
- 数据结构与算法之递推算法 C++与PHP实现
- 数据结构与算法:python语言描述学习笔记Part3_2
- 数据结构&算法(PHP描述) 半折插入排序 straight binary sort
- 数据结构与算法的js描述总结
- php 大数据量及海量数据处理算法总结
- 数据机构与算法分析:C语言描述 第五章——Priority Queues(Heaps)中的5.4.2 Event Simiulation
- 数据结构与算法C++描述(5)---模拟指针及模拟链表