Selection sort
Selection sort is an algorithm which sorts a list of items by comparing each item of the list to each other item of the list in order to find its sorted position. This is done by recursively finding the max (or min) of the original list and appending (or prepending) it to the resulting list and then removing it from the original list.
Efficiency
Selection sort is O(n^2)
(exponential time/space) in Big O notation, because of the nested loop (since each item of the list requires iterating through each other item of the list in order to determine where it should be sorted to).
Implementation
Pseudocode:
result = []
for (let i = 1; i < list.length; i++) {
min = i
/* get min */
for (j = i + 1; j < list.length) {
if (list[j] < list[min]) {
min = j
}
}
result[min] = list[min]
}