From 5c43d160cf8e78ac24547a18bc0a20efafaee446 Mon Sep 17 00:00:00 2001 From: fungamer2-2 <56766520+fungamer2-2@users.noreply.github.com> Date: Thu, 11 Nov 2021 07:30:22 -0500 Subject: [PATCH] Fix redundant recursions of Binary Merge Sort --- src/sorts/templates/MergeSorting.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/sorts/templates/MergeSorting.java b/src/sorts/templates/MergeSorting.java index 07357d0f..fb8040af 100644 --- a/src/sorts/templates/MergeSorting.java +++ b/src/sorts/templates/MergeSorting.java @@ -38,9 +38,6 @@ protected MergeSorting(ArrayVisualizer arrayVisualizer) { private void merge(int[] array, int[] tmp, int start, int mid, int end, boolean binary) { if(start == mid) return; - - merge(array, tmp, start, (mid+start)/2, mid, binary); - merge(array, tmp, mid, (mid+end)/2, end, binary); if(end - start < 32 && binary) { return; @@ -49,6 +46,9 @@ else if(end - start < 64 && binary) { binaryInserter.customBinaryInsert(array, start, end, 0.333); } else { + merge(array, tmp, start, (mid+start)/2, mid, binary); + merge(array, tmp, mid, (mid+end)/2, end, binary); + int low = start; int high = mid;