pytudes._2021.miscellany.sorting.mergesortο
Module Contentsο
Functionsο
|
|
|
Complexity: |
|
Performing merge operation in-place by overwriting associated indexes of input array |
|
Complexity: |
- pytudes._2021.miscellany.sorting.mergesort._mergesort(nums)[source]ο
- Complexity:
- n = len(nums)
- Space: 2n = O(n)
for (2 * n/2) copies of sorted left/right subarrays and (1 * n) copy of merged array
- Examples:
>>> _mergesort([]) []
- pytudes._2021.miscellany.sorting.mergesort._mergesort_space_optimized(nums, start, end)[source]ο
Performing merge operation in-place by overwriting associated indexes of input array
- Complexity:
- n = len(nums)
- Space: n = O(n)
for (2 * n/2) copies of sorted left/right subarrays
- Examples:
>>> _mergesort_space_optimized([], 0, 0)
- pytudes._2021.miscellany.sorting.mergesort.mergesort(nums, in_place=True)[source]ο
- Complexity:
- n = len(nums)
Time: O(nlogn) Space: O(n) for copies of sorted subarrays
- Examples:
>>> assert(mergesort([3,3,1,1,2,2], in_place=True) == mergesort([3,3,1,1,2,2], in_place=False)) >>> mergesort([3,3,1,1,2,2], in_place=True) [1, 1, 2, 2, 3, 3] >>> mergesort([3,2,1,1,2,3], in_place=True) [1, 1, 2, 2, 3, 3] >>> mergesort([0,-4,2,-2,4]*3, in_place=True) [-4, -4, -4, -2, -2, -2, 0, 0, 0, 2, 2, 2, 4, 4, 4]