JavaScript 陣列的重排序方法

2021-08-13 20:43:54 字數 694 閱讀 5552

陣列中有兩個可以直接用來排序的方法:reverse( )和sort( )。

reverse( )方法:反轉陣列項的排列順序,即逆序排列之前的陣列。

例1:使用reverse( )方法排列陣列

var arr=[12,2,31,4,55,38];

alert(arr.reverse());//輸出結果為:38,55,4,31,2,12

sort( )方法:將陣列項(不管是不是數字)轉化為字串,通過比較字串進行排序。

例2:使用sort( )方法排列陣列

var arr=[12,2,31,4,55,38];

alert(arr.sort());//輸出結果為:12,2,31,38,4,55

由例2可見,對於更複雜的陣列而言,sort( )方法難以實現陣列的公升序排列。

重點:使用sort( )方法實現陣列的公升序排列

**1:公升序排列陣列

var arr=[12,2,31,4,55,38];

function compare(num1,num2)else if(num1return -1;

}else

}alert(arr.sort(compare))

如果想將陣列按照從大到小的順序排列,只需改變1和-1的符號即可。

shuffle 重排陣列

在一些應用中,我們可能希望按不同的方式對陣列進行排序。函式shuffle 將陣列進行隨機排序。函式array reverse 則可以將原陣列反向排序。bob想讓其 首頁上的產品能夠反應出公司的特色,他擁有很多產品,但希望能夠每次從中隨機抽取出三種產品顯示在首頁上。為了不至於讓多次登入 的訪問者感到厭...

陣列重排(貪心)

給定乙個1 n的排列a1,a2,an,每次操作小hi可以選擇乙個數,把它放到陣列的最左邊。請計算小hi最少進行幾次操作就能使得新陣列是遞增排列的。input 第一行包含乙個整數n。第二行包含n個兩兩不同整數a1,a2,an。1 ai n 對於60 的資料 1 n 20 對於100 的資料 1 n 1...

陣列奇偶重排

2019 04 06 題目描述 輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序,使得所有的奇數字於陣列的前半部分,所有的偶數字於陣列的 後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。include include using namespace std void reordera...