อาร์เรย์ที่ยังไม่เรียง: [10, -22, 54, 3, 4, 45, 6]
ตัวอย่างโค้ด Bubble Sort
function bubbleSort(numberArray, size) {
for (var lastIndex = size - 1; lastIndex > 0; lastIndex--) {
for (var i = 0; i < lastIndex; i++) {
if (numberArray[i] > numberArray[i + 1]) {
var temp = numberArray[i];
numberArray[i] = numberArray[i + 1];
numberArray[i + 1] = temp;
}
}
}
return numberArray;
}
var arr = [10, -22, 54, 3, 4, 45, 6];
console.log(bubbleSort(arr, arr.length));รันด้วยคำสั่ง:
node fileName.js
ชื่อไฟล์: demo280.js
ผลลัพธ์
PS C:\Users\Amit\javascript-code> node demo280.js [ -22, 3, 4, 6, 10, 45, 54 ]
คำอธิบาย: Bubble Sort เปรียบเทียบคู่ติดกัน สลับที่ถ้าผิดลำดับ ทำซ้ำจนเรียบร้อย Complexity O(n²) ใช้ได้กับตัวเลขลบปกติ
ในทางปฏิบัติ: ควรใช้ arr.sort((a, b) => a - b) ซึ่งเร็วกว่าและเป็น built-in