亲宝软件园·资讯

展开

用js实现简单算法的实例代码

人气:0

一.冒泡排序

var arr1=[3,9,2,7,0,8,4];
for(var i=0;i<arr1.length;i++){
  for(var j=i+1;j<arr1.length;j++){
    var temp=0;
    if(arr1[i]>arr1[j]){
      temp=arr1[i];
      arr1[i]=arr1[j];
      arr1[j]=temp;
    }
  }
}
alert(arr1);

二.快速排序

var a=[3,5,0,9,2,7,5];
function quickSort(arr){
  var len=a.length;
  if(len<=1) return arr;

  function sort(low,height){
    var pivot=a[low];
    var i=low,j=height,t;
    if(i>j) return false;
    while(i!=j){
      while(a[j]>=pivot&&i<j){
        j--;
      }
      while(a[i]<=pivot&&i<j){
        i++;
      }
      if(i<j){//把比pivot大的换到右边,小的换到左边
        t=a[i];
        a[i]=a[j];
        a[j]=t;
      }
    }
    //此时i和j指向同一个数字,把这个数字和pivot交换
    a[low]=a[i];
    a[i]=pivot;
    //递归:把pivot左边的数进行一次排序,右边的数进行一次排序
    sort(low,i-1);
    sort(i+1,height);
  }
  //调用这个排序的函数
  sort(0,len-1);
  return a;
}
alert(quickSort(a));

以上就是小编为大家带来的用js实现简单算法的实例代码的全部内容了,希望对大家有所帮助,多多支持~

加载全部内容

相关教程
猜你喜欢
用户评论