基于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 //页面编码设为utf8 header('Content-type: text/html; charset=utf-8'); $luokuan =...

php eval函数用法 PHP中eval()函数小技巧

eval 将值代入字符串之中。 语法: void eval(string code_str); 传回值: 无 函式种类: 数据处理 内容说明 本函式可将字符串之中的变量值代入,通常用在处...

php程序内部post数据的方法

本文实例讲述了php程序内部post数据的方法。分享给大家供大家参考。具体实现方法如下: $postData = array(); $postData['data1'] = "tes...

sphinx增量索引的一个问题

但最近发现增量的总是搜索不到,今天看了下运行日志,有如下提示: [Sun Apr 17 19:30:01.876 2011] [ 3400] WARNING: rotating inde...

深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表

PHP几个算法整理 涉及到以下几个示例。PHP冒泡PHP二分法PHP求素数PHP乘法表 PHP冒泡法 示例复制代码 代码如下://PHP冒泡  从小到大function mao...