1. 程式人生 > 其它 >// 03、封裝氣泡排序演算法 sortMe() 。

// 03、封裝氣泡排序演算法 sortMe() 。

<script> // 03、封裝氣泡排序演算法 sortMe() 。 // arr為陣列,des輸入是升序(up)還是降序(low),預設升序 function sortMe(arr, des = 'up') { // 控制比較次數,最後剩一個就不要比較了 for (let i = 0; i < arr.length; i++) { // 控制每輪比較的次數,比較完的沒必要比較了所以-i,也是最後剩一個沒有必要比較了所以可以-1 for (let j = 0; j < arr.length - i - 1; j++) { if (des == 'up') { // 兩兩比較 if (arr[j] > arr[j + 1]) { let temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } else { // 降序 if (arr[j] < arr[j + 1]) { let temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } } return arr; }
console.log(sortMe([1,2,34,5,54,654,699,4,4,56,3])); console.log(sortMe([1,2,34,5,54,654,699,4,4,56,3],'low')); </script>