91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript中有哪些數組排序方法

發布時間:2021-06-07 18:05:34 來源:億速云 閱讀:140 作者:Leah 欄目:web開發

今天就跟大家聊聊有關javascript中有哪些數組排序方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

javascript排序方法:1、sort()方法,用于對數組的元素進行排序,語法“arrayObject.sort(sortby)”;2、reverse()方法,用于顛倒數組中元素的順序,即倒序,語法“array.reverse()”。

js中排序方法

1、sort()方法

sort() 方法用于對數組的元素進行排序。

示例:

var ar1=[2,4,6,8,1,3]
var ar2=[2,16,36,8,56]
ar1.sort()
ar2.sort()//這個方法值只能排序第一位數  也可以字符串進行排序
console.log(ar1)//[1,2,3,4,6,8]
console.log(ar2)//[16, 2, 36, 56, 8]

ar2.sort(function(a,b){
    return a-b //a-b為升序
    //return b-a  //b-a為降序
})
console.log(ar2)//[2, 8, 16, 36, 56]

2、reverse()方法

reverse() 方法用于顛倒數組中元素的順序。

示例:

var ar1=[2,4,6,8,1,3]
ar1.reverse()//此方法為倒序,也就是反過來。并不會進行大小排序
console.log(ar1)//[3, 1, 8, 6, 4, 2]

擴展知識:

冒泡排序

//每輪依次比較相鄰兩個數的大小,后面比前面小則交換
var b=0//設置用來調換位置的值
var a=[1,9,33,2,5,34,23,98,14]//冒泡排序
for(var i=0;i<a.length;i++){
    for(var j=0;j<a.length;j++){
        if(a[j]>a[j+1]){
            b=a[j]
            a[j]=a[j+1]
            a[j+1]=b
        }
    }
}
console.log(a)//[1, 2, 5, 9, 14, 23, 33, 34, 98]

選擇排序

//拿第一個數與后面數相比較,如果比后面的數大則交換
//拿第二個數與后面的數比較,如果比后面的數大則交換
//直到比較到倒數第二個數,最后一個數不用比較
var b=0//設置用來調換位置的值
var a=[1,9,33,2,5,34,23,98,14]//冒泡排序
for(var i=0;i<a.length;i++){
    for(var j=i;j<a.length;j++){
        if(a[j]>a[j+1]){
            b=a[j]
            a[j]=a[j+1]
            a[j+1]=b
        }
    }
}
console.log(a)//[1, 2, 5, 9, 14, 23, 33, 34, 98]

快速排序

  • 先從數列中取出一個數作為基準數

  • 分區過程,將比這個數大的數全放到它的右邊,小于或等于它的數全放到它的左邊

  • 再對左右區間重復第二步,直到各區間只有一個數

function quickSort(arr, i, j) {
  if(i < j) {
    let left = i;
    let right = j;
    let mid = Math.floor((left+right)/2);
    let temp = arr[left];
    arr[left] = arr[mid];
    arr[mid] = temp;
    let pivot = arr[left];
    while(i < j) {
      while(arr[j] >= pivot && i < j) {  // 從后往前找比基準小的數
        j--;
      }
      if(i < j) {
        arr[i++] = arr[j];
      }
      while(arr[i] <= pivot && i < j) {  // 從前往后找比基準大的數
        i++;
      }
      if(i < j) {
        arr[j--] = arr[i];
      }
    }
    arr[i] = pivot;
    quickSort(arr, left, i-1);
    quickSort(arr, i+1, right);
    return arr;
  }
}

看完上述內容,你們對javascript中有哪些數組排序方法有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

利辛县| 靖江市| 扎囊县| 济南市| 惠州市| 扶风县| 宁陕县| 乐昌市| 姜堰市| 田林县| 古交市| 镇远县| 南昌市| 东丽区| 文山县| 青海省| 永定县| 宜宾市| 阿克苏市| 齐齐哈尔市| 江孜县| 温州市| 平邑县| 潜江市| 江陵县| 义乌市| 多伦县| 镇坪县| 田东县| 太湖县| 古交市| 沾益县| 全州县| 大宁县| 贺州市| 临沭县| 通海县| 枞阳县| 独山县| 阿拉善左旗| 定日县|