當前位置:成語大全網 - 新華字典 - 請問js的sort排序方法是怎麽樣的?比較次數是多少?

請問js的sort排序方法是怎麽樣的?比較次數是多少?

這個排序這進行兩兩比較.

比如妳這個數組按升序排列var arrA = [6,2,4,3,5,1];

第壹次比較6,2

6比2大得到2,6

原數組變成[2,6,4,3,5,1]

第2次比較第2個和第3個數,6和4.

6比4大,得到4,6

結果[2,4,6,3,5,1]

第3次比較第3個和第4個數6和3.

得到[2,4,3,6,5,1]

第4次[2,4,3,5,6,1]

第5次[2,4,3,5,1,6]

第壹輪完畢

第二輪

第6次,2比4小,不變[2,4,3,5,1,6]

第7次[2,3,4,5,1,6]

第8次4比5小,不變[2,3,4,5,1,6]

第9次[2,3,4,1,5,6]

第三輪

第10次 2比3小,不變[2,3,4,1,5,6]

第11次 3比4小,不變[2,3,4,1,5,6]

第12次 [2,3,1,4,5,6]

第4輪

第13次 2比3小,不變[2,3,1,4,5,6]

第14次 [2,1,3,4,5,6]

第5輪

第15次[1,2,3,4,5,5]

看出規律了麽.第壹輪比較數組總數-1次.以後每輪比較次數再-1

(6-1)+(6-1-1)+(6-1-1)+(6-1-1-1)+(6-1-1-1-1)+(6-1-1-1-1-1)=5+4+3+2+1