Recursively dividing an array into smaller sub-arrays, then merging them back together to get a fully sorted array. Is time
Merging Algorithm
- Split up the list into sub-arrays of 1
- Check which sub-list is smaller than the other, and merge in proper order