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

詳解JS中的快速排序與冒泡

 更新時間:2017年01月10日 14:04:43   作者:奮斗的小小牛  
本文主要介紹了快速排序思想與冒泡排序思想。具有一定的參考價值,下面跟著小編一起來看下吧

1.快速排序思想:

  1.1 先找數組的最中間的一個數為基準

  1.2 把數組通過此基準分為小于基準的left數組和大于基準的right數組,

  1.3 遞歸重復上面的兩個步驟,

代碼如下:

function quickSort(arr) {
  if (arr.length <=1 ){
    return arr;
  }
  var middleIndex = Math.floor(arr.length / 2);
  var left = [];
  var right = [];
  var middle = arr.splice(middleIndex,1)[0];
  for (var i = 0; i < arr.length; i++) {
    if ( arr[i] > middle) {
      right.push(arr[i]);
    } else {
      left.push(arr[i]);
    }
  }
  return quickSort(left).concat(middle,quickSort(right));
}

2. 冒泡排序思想:

  2.1 兩兩比較,交換位置

  2.2 循環(huán)數組

代碼如下:

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

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關文章

  • JavaScript數組去重的方法總結【12種方法,號稱史上最全】

    JavaScript數組去重的方法總結【12種方法,號稱史上最全】

    這篇文章主要介紹了JavaScript數組去重的方法,結合實例形式較為詳細的總結分析了12種方法數組去重的方法,需要的朋友可以參考下
    2019-02-02
  • 信息滾動效果的實例講解

    信息滾動效果的實例講解

    下面小編就為大家?guī)硪黄畔L動效果的實例講解。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • ionic js 模型 $ionicModal 可以遮住用戶主界面的內容框

    ionic js 模型 $ionicModal 可以遮住用戶主界面的內容框

    這篇文章主要介紹了ionic js 模型 $ionicModal 可以遮住用戶主界面的內容框的相關資料,需要的朋友可以參考下
    2016-06-06
  • 詳解小程序中h5頁面onShow實現及跨頁面通信方案

    詳解小程序中h5頁面onShow實現及跨頁面通信方案

    這篇文章主要介紹了小程序中h5頁面onShow實現及跨頁面通信方案,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • JS中使用 after 偽類清除浮動實例

    JS中使用 after 偽類清除浮動實例

    這篇文章主要介紹了使用 after 偽類清除浮動實例,非常不錯,具有參考借鑒價值,需要的的朋友參考下
    2017-03-03
  • js驗證是否為數字的總結

    js驗證是否為數字的總結

    js驗證是否為數字的總結,需要的朋友可以參考一下
    2013-04-04
  • JavaScript判斷瀏覽器版本的方法

    JavaScript判斷瀏覽器版本的方法

    這篇文章主要介紹了JavaScript判斷瀏覽器版本的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • JavaScript提升機制Hoisting詳解

    JavaScript提升機制Hoisting詳解

    這篇文章主要介紹了JavaScript提升機制Hoisting詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • 使用canvas修改二維碼顏色的實現過程

    使用canvas修改二維碼顏色的實現過程

    二維碼作為現代信息傳遞的重要工具,其黑白色調一直是其標志性特征,然而,有時我們可能希望個性化定制二維碼的顏色,以適應特定設計需求或提高可識別性,在這篇文章中,我們將深入探討如何使用Canvas技術修改二維碼的顏色,為二維碼添加更多創(chuàng)意和個性
    2023-11-11
  • js獲取上傳文件的絕對路徑實現方法

    js獲取上傳文件的絕對路徑實現方法

    下面小編就為大家?guī)硪黄猨s獲取上傳文件的絕對路徑實現方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08

最新評論

雷州市| 留坝县| 逊克县| 屏东市| 峨眉山市| 宿州市| 定西市| 丽江市| 南通市| 扶余县| 蒙自县| 墨竹工卡县| 邢台县| 辉南县| 兴化市| 安福县| 上栗县| 文成县| 奉新县| 尤溪县| 嘉定区| 临泉县| 澎湖县| 洞口县| 敖汉旗| 海安县| 新和县| 辉县市| 民丰县| 开平市| 道真| 黄石市| 依安县| 郁南县| 高阳县| 滁州市| 醴陵市| 营山县| 丰宁| 顺昌县| 新邵县|