欢迎来到代码驿站!

JavaScript代码

当前位置:首页 > 网页前端 > JavaScript代码

js快速排序的实现代码

时间:2022-02-06 09:42:17|栏目:JavaScript代码|点击:

但是有不少的书本讲得并不是很清楚,而且不同的教材的实现方式也不尽相同,
我这里将最简单的快速排序的思路写出来供大家参考。

希望不管是使用什么语言都能从这个简单的代码里很方便的掌握快排思路与编写方式

复制代码 代码如下:

function quick_sort(list, start, end) { 
      if (start < end) { 
        var pivotpos = partition(list, start, end);   //找出快排的基数 
        quick_sort(list, start, pivotpos - 1);        //将左边的快排一次 
        quick_sort(list, pivotpos + 1, end);          //将右边的快排一次 
      } 
    } 

     
    //将一个序列调整成以基数为分割的两个区域,一边全都不小于基数,一边全都不大于基数 
    function partition(list, start, end) { 
      var pivotpos = start; 
      var pivot = list[start]; 
      var tmp; 
      for(var i = start + 1; i <= end; i ++) { 
        if (list[i] < pivot) { 
          tmp = list[i]; 
          pivotpos += 1; 
          list[i] = list[pivotpos]; 
          list[pivotpos] = tmp; 
        } 
      } 

      tmp = list[start]; 
      list[start] = list[pivotpos]; 
      list[pivotpos] = tmp; 
      return pivotpos; 
    } 

     
    var list = [8,2,4,65,2,4,7,1,9,0,2,34,12]; 

    quick_sort(list, 0, list.length);

上一篇:webpack4实现不同的导出类型

栏    目:JavaScript代码

下一篇:微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】

本文标题:js快速排序的实现代码

本文地址:http://www.codeinn.net/misctech/192568.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有