From 48e73dad5722dc690bad02be54c869fc10b34c78 Mon Sep 17 00:00:00 2001 From: Muskan <=muskanverma2062@gmail.com> Date: Thu, 1 Oct 2020 08:16:35 +0530 Subject: [PATCH 1/2] Merge Sort --- Main.java | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Main.java diff --git a/Main.java b/Main.java new file mode 100644 index 0000000..27b8f65 --- /dev/null +++ b/Main.java @@ -0,0 +1,40 @@ +public class Main { + + public static void main(String[] args) { + int[] intArray = { 52, 63, -5, 89, -12 }; + + mergeSort(intArray, 0, intArray.length); + + for (int i = 0; i < intArray.length; i++) { + System.out.println(intArray[i]); + } + } + public static void mergeSort(int[] input, int start, int end) { + + if (end - start < 2) { + return; + } + int mid = (start + end) / 2; + mergeSort(input, start, mid); + mergeSort(input, mid, end); + merge(input, start, mid, end); + } + + public static void merge(int[] input, int start, int mid, int end) { + + if (input[mid - 1] <= input[mid]) { + return; + } + + int i = start; + int j = mid; + int tempIndex = 0; + + int[] temp = new int[end - start]; + while (i < mid && j < end) { + temp[tempIndex++] = input[i] <= input[j] ? input[i++] : input[j++]; + } + System.arraycopy(input, i, input, start + tempIndex, mid - i); + System.arraycopy(temp, 0, input, start, tempIndex); + } +} From d14c625de990672c3da34da9ee893724aa0b8fb1 Mon Sep 17 00:00:00 2001 From: Muskan <=muskanverma2062@gmail.com> Date: Thu, 1 Oct 2020 08:29:53 +0530 Subject: [PATCH 2/2] Merge Sort Java Signed-off-by: Muskan <=muskanverma2062@gmail.com> --- Main.java => Merge Sort/Main.java | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Main.java => Merge Sort/Main.java (100%) diff --git a/Main.java b/Merge Sort/Main.java similarity index 100% rename from Main.java rename to Merge Sort/Main.java