Почему посередине справа подмассив MergeSort - PullRequest
1 голос
/ 16 июня 2019

Итак, я наткнулся на сортировку слиянием и заметил, что средняя точка хранится на правом подмассиве.Зачем это делать?Это выгоднее?Я пытался выяснить, но не смог найти ни одного документа, подтверждающего это.

Пример на Python при выделении подмассивов для left и rgiht

    left = [] * midPoint
    for i in range(midPoint):
        left.append(array[i])

    right = [] * (n - midPoint)
    for i in range(midPoint, n):
        right.append(array[i])

1 Ответ

0 голосов
/ 16 июня 2019

Когда вы делите массив с нечетным числом значений на два подмассива, не имеет значения, какой подмассив (левый или правый) имеет одно большее значение, чем другое. Это просто деталь реализации. Алгоритмическая сложность останется прежней - O (n * lg (n)).

...