基于php冒泡排序算法的深入理解

yipeiwu_com6年前PHP代码库

交换排序的基本思想:两两比较待排序的数据,如果发生逆序,则交换之,直到全部数据都排好序为止。
•冒泡排序的基本思想:
1.从后往前,扫描所有的数据,如果相邻的两个数发生逆序,则互换。--第1趟冒泡
2.从后往前,扫描最后一个到第2个数据,如果相邻的两个数发生逆序,则互换。--第2趟冒泡
3.如此依次进行,直到进行n-1趟冒泡,或者在某趟冒泡中,没有逆序的情况即可提前结束。

复制代码 代码如下:

<script>
var arr = [15,8,7,9,10,0];

var _len = arr.length;

alert("排序之前:"+arr);

var exchange=0;
var temp = 0;
for(var i=0; i<arr.length;i++)
{
  exchange=0;
  for(var j=arr.length;j>=i;j--)
  {
     if(arr[j] < arr[i])
     {
       temp = arr[j];
       arr[j] = arr[i];
       arr[i] = temp;
       exchange = 1;     
     }
  }
  if(exchange == 0)
  {
     break;
  }
}

alert("排序之后:"+ arr);

</script>


相关文章

php一些公用函数的集合

/*获得客户端ip地址*/     function getIP() {      &...

php线性表顺序存储实现代码(增删查改)

复制代码 代码如下: <?php /* *文件名:linearList.php * 功能:数据结构线性表的顺序存储实现 * author:黎锦焕 * @copyright:www....

PHP实现提高SESSION响应速度的几种方法详解

本文实例讲述了PHP实现提高SESSION响应速度的几种方法。分享给大家供大家参考,具体如下: 设置多级目录存储SESSION 默认session的存储目录是1级目录,如果用户量比较大,...

PHP中for循环与foreach的区别

for循环与foreach的区别 foreach 依赖 IEnumerable. 第一次 var a in GetList() 时调用 GetEnumerator 返回第一个对象并赋给a...

php+xml实现在线英文词典之添加词条的方法

本文实例讲述了php+xml实现在线英文词典之添加词条的方法。分享给大家供大家参考。具体如下: 接着上一篇《php+xml实现在线英文词典查询的方法》,这里要添加一个功能,提交英文单词和...