Introduction
In this lab, we will be working on a JavaScript programming exercise that focuses on sorting arrays using the bubble sort algorithm. The purpose of this lab is to help you understand how the bubble sort algorithm works, as well as to give you an opportunity to practice your JavaScript programming skills. By the end of this lab, you will have a better understanding of how to implement the bubble sort algorithm in JavaScript, and how to use it to sort arrays of numbers.
Bubble Sort Algorithm
To practice coding, open the Terminal/SSH and type node to start. The bubble sort algorithm sorts an array of numbers.
Steps to sort an array using the bubble sort algorithm:
Declare a variable,
swapped, that indicates if any values were swapped during the current iteration.Use the spread operator (
...) to clone the original array,arr.Use a
forloop to iterate over the elements of the cloned array, terminating before the last element.Use a nested
forloop to iterate over the segment of the array between0andi, swapping any adjacent out of order elements and settingswappedtotrue.If
swappedisfalseafter an iteration, no more changes are needed, so the cloned array is returned.
Example code:
const bubbleSort = (arr) => {
let swapped = false;
const a = [...arr];
for (let i = 1; i < a.length; i++) {
swapped = false;
for (let j = 0; j < a.length - i; j++) {
if (a[j + 1] < a[j]) {
[a[j], a[j + 1]] = [a[j + 1], a[j]];
swapped = true;
}
}
if (!swapped) return a;
}
return a;
};
bubbleSort([2, 1, 4, 3]); // [1, 2, 3, 4]
Summary
Congratulations! You have completed the Bubble Sort lab. You can practice more labs in LabEx to improve your skills.