merge sort
RU: сортировка слиянием
A divide-and-conquer sorting algorithm that recursively splits an array into halves, sorts each half, then merges them. Time is O(n log n) for all cases — best, average, and worst. It is stable and requires O(n) extra space; unlike quicksort, it has no worst-case degradation.