Insert sort is a simple sorting algorithm that builds the final sorted array one item at a time. It always maintains a sorted array in the lower positions of the list.
The insertion sort works by creating a section of the array called the sorted array. It builds on the sorted array one array index at a time by grabbing the first non-sorted member of the array from the left or in other words the next index and then checking from right to left on the sorted array to find a suitable location to "insert" the member of the array into.
Black box = sorted
No box = unsorted
Red box = element being inserted
Advantages
Effective for arrays of small size
In-Place Algorithm
Disadvantages
Less effective for larger lists