diff options
Diffstat (limited to 'sort/parallelmerge.go')
| -rw-r--r-- | sort/parallelmerge.go | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/sort/parallelmerge.go b/sort/parallelmerge.go index 87543f6..c379883 100644 --- a/sort/parallelmerge.go +++ b/sort/parallelmerge.go @@ -12,18 +12,13 @@ func ParallelMerge(a ds.ArrayList) ds.ArrayList { func parallelMerge(a, aux ds.ArrayList) { l := len(a) - if l <= 1 { - return - } - mi := l / 2 if l < 1000 { - mergeSort(a[0:mi], aux[0:mi]) - mergeSort(a[mi:], aux[mi:]) - merge(a, aux, 0, mi, l-1) + mergeSort(a, aux) return } + mi := l / 2 var wg sync.WaitGroup wg.Add(2) @@ -39,5 +34,4 @@ func parallelMerge(a, aux ds.ArrayList) { wg.Wait() merge(a, aux, 0, mi, l-1) - return } |
