1) Split the list into many smaller lists, recursively, before reconstructing them, during which it sorts the items as needed 2) +-------+-----+--------+ | Start | End | Middle | +-------+-----+--------+ | 0 | 8 | 4 | | 0 | 4 | 2 | | 0 | 2 | 1 | +-------+-----+--------+ | 2 | 4 | 3 | | 4 | 8 | 6 | +-------+-----+--------+ | 4 | 6 | 5 | | 6 | 8 | 7 | +-------+-----+--------+ 3) See colliert_merge_question_3.png, colliert_merge_question_3.txt 4) MergeSort(CU, U, 0, 8) ┣━MergeSort(U, CU, 0, 4) ┃ ┣━━MergeSort(CU, U, 0, 2) ┃ ┣━━MergeSort(CU, U, 2, 4) ┃ ┗━━Merge(U, CU, 0, 2, 4) ┣━MergeSort(U, CU, 4, 8) ┃ ┣━━MergeSort(CU, U, 4, 6) ┃ ┣━━MergeSort(CU, U, 6, 8) ┃ ┗━━Merge(U, CU, 4, 6, 8) ┗━Merge(CU, U, 0, 4, 8)