據(jù)說sort函數(shù)內(nèi)部用了二十多種排序方法,是根據(jù)要排序數(shù)的亂序程度來決定使用哪一種排序方法的,具體是怎樣實(shí)現(xiàn)的呢?有木有源代碼?
array源碼
Reference:http://stackoverflow.com/ques...http://stackoverflow.com/ques...http://stackoverflow.com/ques...
每個(gè)引擎的實(shí)現(xiàn),都不一樣阿 ...
Webkit :底層實(shí)現(xiàn)用了 C++ 庫(kù)中的 qsort() 方法(JSArray.cpp 源碼)
原來,V8 引擎 sort
函數(shù)只給出了兩種排序 InsertionSort
和 QuickSort
,數(shù)量小于10的數(shù)組使用 InsertionSort
,比10大的數(shù)組則使用 QuickSort
。
710行開始。