js中 的排序方法
氣泡排序
思想:陣列中相鄰元素兩兩比較,如果第一個元素大於第二個元素,交換位置,第一輪比較結束,能確定一個最大值,然後進行第二類比較。
var arr = [11,2,3,5,6,67];
for(var i=1; i<arr.length; i++){
for(var j=0; j<arr.length-i; j++){
if(arr[j]>arr[j+1]){
var temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
**選擇排序**
思想:假定陣列中第一個元素為最小值,對應的索引值為minIndex,讓該值和剩餘元素進行比較,改變minIndex的指向,指向小值的索引,讓minIndex對應的值和剩餘的值進行比較,第一輪結束能確定最小值對應minIndex,讓其與第一個元素的位置進行交換
var arr = [11,3,45,56,6,7]
function selectSort(arr){
for(var i=0; i<arr.length-1; i++){
var minIndex = i;
for(var j=i+1; j<arr.length; j++){
if(arr[minIndex] >arr[j]){
minIndex = j;
}
}
var temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
return arr;
}
console.log(selectSort(arr));
©著作權歸作者所有:來自51CTO部落格作者outsider96的原創作品,如需轉載,請註明出處,否則將追究法律責任
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1020/viewspace-2818983/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- js字串排序方法JS字串排序
- 經常提及的幾個js排序方法(氣泡排序、選擇排序、計數排序)JS排序
- Java集合中的排序方法Java排序
- js-面試中的快速排序JS面試排序
- Go 中的三種排序方法Go排序
- js中的toString方法JS
- js中的字串方法JS字串
- 關於js陣列方法sort()負數排序的陷阱JS陣列排序
- JS中建立物件的方法JS物件
- 用原生Js利用sort方法 實現圖片的正 倒排序和隨機排序JS排序隨機
- pandas | DataFrame中的排序與彙總方法排序
- JS中reduce方法JS
- js中Array的方法簡介JS
- js中修改this的指向方法整理JS
- js 快速排序JS排序
- js堆排序JS排序
- Python中幾種lambda排序方法Python排序
- 理解JS中的call、apply、bind方法(********************************************************JSAPP
- js中Object那些不常用的方法JSObject
- 外部js呼叫vue的methods中的方法JSVue
- JS中的call()方法和apply()方法用法總結JSAPP
- js將陣列中的字串執行字母表排序JS陣列字串排序
- js氣泡排序JS排序
- js選擇排序JS排序
- js陣列排序JS陣列排序
- 簡單的排序方法排序
- JS中字串和陣列的常用方法JS字串陣列
- js中常用的演算法排序JS演算法排序
- JS中排序的用法和例項JS排序
- js 實現堆排序JS排序
- js陣列排序整理JS陣列排序
- 歸併排序 js demo排序JS
- 基於桶的排序之基數排序以及排序方法總結排序
- 重寫JS中的apply,call,bind,new方法JSAPP
- JS中判斷null、undefined與NaN的方法JSNullUndefinedNaN
- JS中陣列的遍歷方法(3種)JS陣列
- MySQL中的排序MySql排序
- 記一次產品需求中的陣列排序方法陣列排序