Understanding Selection Sort Algorithm (in JavaScript!)
Selection sort is not a very fast algorithm, but it is useful for searching through a list and sorting in a particular order (like smallest to largest values).
The algorithm compares the values in a list/array, in place.
We’ll begin by declaring our function and the return value (the sorted array).
function selectionSort(arr) {return arr;}
Next, we need to add the loop necessary to search through the length of the array.
We also need to declare a variable that will hold the index of our smallest value, assuming that the index is the smallest value (i).
function selectionSort(arr) {for (let i = 0; i < arr.length - 1; i++{ let smallest = i;
}return arr}
We have the loop stop at one value less than the length of the array because in the next loop we will compare i with the next value, i+1
Now, we need to add a second loop that will compare the values in the array.
This loop will look for the smallest value, as previously declared by smallest.
function selectionSort(arr) {for (let i = 0; i < arr.length - 1; i++{ let smallest = i;for (let j = i + 1; j < arr.length; j++){}}return arr}
Now, we compare the values and swap them in the array.
If arr at j is smaller than the array at the smallest index, we’ll swap them to make the smallest index = j
function selectionSort(arr) {for (let i = 0; i < arr.length - 1; i++{let smallest = i;for (let j = i + 1; j < arr.length; j++){ if (arr[j] < arr[smallest]){
smallest = j;}} [arr[i], arr[smallest]] = [arr[smallest], arr[i]];}return arr}
✨✨✨And that’s it!
Tish⚡️🎧🌙