I am trying to understand the differences between Insertion Sort and Selection Sort.
They both seem to have two components: an unsorted list and a sorted list. They both seem to take one element from the unsorted list and put it into the sorted list at the proper place. I have seen some sites/books saying that selection sort does this by swapping one at a time while insertion sort simply finds the right spot and inserts it. However, I have seen other articles say something, saying that insertion sort also swaps. Consequently, I am confused. Is there any canonical source?
22 Answers
Selection Sort:
Given a list, take the current element and exchange it with the smallest element on the right hand side of the current element.