選擇排序是從陣列的第乙個數開始,和其他元素逐一進行比較,並將最小數放到陣列的第乙個位置,第一輪比結束。然後從重新排序的陣列中的第二個數開始(此時第乙個數已經是最小的)再次和其他元素逐一進行比較。重複這一過程,直到陣列中只剩最後乙個數沒有進行逐一比較(因為此時最後乙個數已經是最大值)。
首先定義乙個待排序的陣列:
var arr =[6
,4,2
,5,1
];
然後定義兩個中間變數,min
(用於存放最小值)和temp
(用於陣列中的數值交換順序)
var min,temp;
//外層迴圈確定遍歷次數
for(
var outer =
0;outer <= arr.length-
2;outer++
)}console.
log(
"第"+
(outer+1)
+"次排序:"
+arr)
;}
控制台的輸出為:
這樣我們就實現了選擇排序演算法。
為方便大家學習,將完整的**展現出來:
Javascript實現對Json陣列排序
一 適用於數字排序和字元排序 最簡單的一種 var sortby function filed,rev,primer if a b if a b return 1 var obj 數字排序 obj.sort sortby b false,parseint console.log obj 字元排序 o...
JavaScript 如何實現陣列的隨機排序?
第一種方法。math.random 返回介於 0 包含 1 不包含 之間的乙個隨機數。這種方法是迴圈過程中通過math.random 函式產生的隨機值,在陣列中這個隨機值位置的數和arr i 位置的資料交換,迴圈結束,產生隨機數組。第二種方法。splice 方法用於插入 刪除或替換陣列的元素。注意 ...
python實現冒泡選擇插入快排
通過交換使相鄰的兩個數變成小數在前大數在後,這樣每次遍歷後,最大的數就 沉 到最後面了。重複n次即可以使陣列有序。def butttle arr for i in range len arr 1 exchange false for j in range len arr i 1 if arr j a...