js實現排序的三種方法

2021-10-01 05:16:37 字數 865 閱讀 9596

一:冒牌排序1思想:氣泡排序思想:每一次對比相鄰兩個資料的大小,小的排在前面,如果前面的資料比後面的大就交換這兩個數的位置

要實現上述規則需要用到兩層for迴圈,外層從第乙個數到倒數第二個數,內層從外層的後面乙個數到最後乙個數

2特點:排序演算法的基礎。簡單實用易於理解,缺點是比較次數多,效率較低。

var   arr=[2,5,4,1,7,3,8,6,9,0];

function arraymax(arr) }}

return arr;

}console.log(arraymax(arr));

1思想:快速排序思想:先找到乙個基準點(一般指數組的中部),然後陣列被該基準點分為兩部分,依次與該基準點資料比較,如果比它小,放左邊;反之,放右邊。

左右分別用乙個空陣列去儲存比較後的資料。最後遞迴執行上述操作,直到陣列長度<=1;

2特點:快速,常用。缺點是需要另外宣告兩個陣列,浪費了記憶體空間資源

var times = 0;

function queryarraymax(arr)

var arrindex = math.floor(arr.length/2);//獲取中間值 這個是索引

var arrcenterval = arr.splice(arrindex,1);// 利用索引取出中間值 改變原始陣列

var left= ,//儲存小的

right = ;//儲存大的

// 遍歷陣列 ,進行判斷分配

for (var i = 0;i三、sort實現快速排序

arr=[11,5,7,6,3,7,9]

arr.sort(function(a,b))

js的三種方法型別

1 js的三種方法型別?1.1 物件方法 如果類生成了乙個例項,那麼該例項就可以使用該方法 function person name 1.2 類方法 無需通過生成例項而可以直接使用方法 function person name 1.3 原型方法 原型方法主要是對js已有的物件進行擴充套件 詳見dem...

計數排序的三種方法

count sort.cpp 定義控制台應用程式的入口點。include stdafx.h include using namespace std const int len 100 class countsort 計數排序類 countsort countsort length len int c...

php實現快速排序的三種方法分享

寫了三種php快速排示例,第一種效率低但最簡單最容易理解,第二個是演算法導論上提供的單向一次遍歷找中值方法,第三種是雙向遍歷找中值經典快排演算法。三組演算法實現和比較如下 方法一 該方法比較直觀,但損失了大量的空間為代價,使用了效率較低的merge函式。在三種方法中效率最低。最壞情況下演算法退化為 ...