最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js快速排序的實現(xiàn)代碼

 更新時間:2013年12月08日 16:04:24   作者:  
快速排序是一種平均性能非常優(yōu)秀的排序算法,在很多場合都會應(yīng)用到他,了解快速排序于對開放高效率的軟件有很重要的作用

但是有不少的書本講得并不是很清楚,而且不同的教材的實現(xiàn)方式也不盡相同,
我這里將最簡單的快速排序的思路寫出來供大家參考。

希望不管是使用什么語言都能從這個簡單的代碼里很方便的掌握快排思路與編寫方式

復(fù)制代碼 代碼如下:

function quick_sort(list, start, end) { 
      if (start < end) { 
        var pivotpos = partition(list, start, end);   //找出快排的基數(shù) 
        quick_sort(list, start, pivotpos - 1);        //將左邊的快排一次 
        quick_sort(list, pivotpos + 1, end);          //將右邊的快排一次 
      } 
    } 

     
    //將一個序列調(diào)整成以基數(shù)為分割的兩個區(qū)域,一邊全都不小于基數(shù),一邊全都不大于基數(shù) 
    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);

相關(guān)文章

最新評論

江陵县| 虹口区| 肇庆市| 称多县| 新郑市| 明水县| 新疆| 永和县| 香港| 望江县| 赣州市| 聂荣县| 青田县| 海南省| 保山市| 天长市| 泰州市| 罗定市| 东莞市| 平乐县| 青岛市| 龙川县| 彭水| 托克逊县| 渝中区| 伊宁市| 云安县| 甘肃省| 黎城县| 泽库县| 天柱县| 定南县| 博野县| 田东县| 镇原县| 天柱县| 长白| 咸丰县| 宁蒗| 蒙阴县| 合作市|