冒泡排序和插入排序是兩種基本的排序演算法。我使用 JavaScript 實作了這些演算法。
冒泡排序
const arr = [5,4,3,2,1]; for (let i = 0; i < arr.length; i++) { for (j = 0 ; j< arr.length-i; j++) { if (arr[j] > arr[j+1]) { let temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } console.log(arr); // [1,2,3,4,5]
插入排序
它比冒泡排序更好+如果你知道數組幾乎已排序,那麼它是最好的演算法
const arr = [5,4,3,2,1]; for (let i = 0; i < arr.length; i++) { for (let j = i+1; j < arr.length; j++) { if (arr[i] > arr[j]) { const temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } console.log(arr); // [1,2,3,4,5]
選擇排序
const arr = [5,4,3,2,1]; for (let i = 0; i< arr.length; i++) { let min = Infinity; let pos = -1; for(let j = i; j < arr.length; j++) { if (min > arr[j]) { min = arr[j]; pos = j; } } const temp = arr[i]; arr[i] = arr[pos]; arr[pos] = temp; } console.log(arr); // [1,2,3,4,5]
以上是使用 Javascript 的冒泡排序、插入排序和選擇排序演算法的詳細內容。更多資訊請關注PHP中文網其他相關文章!