@@ -0,0 +1,1086 @@
+public static void merge(int arr%5B%5D, int l, int m, int r)%0A    %7B%0A        int n1 = m - l + 1;%0A        int n2 = r - m;%0A %0A        int L%5B%5D = new int %5Bn1%5D;%0A        int R%5B%5D = new int %5Bn2%5D;%0A %0A         for (int i=0; i%3Cn1; ++i)%0A            L%5Bi%5D = arr%5Bl + i%5D;%0A        for (int j=0; j%3Cn2; ++j)%0A            R%5Bj%5D = arr%5Bm + 1+ j%5D;%0A  %0A        int i = 0, j = 0;%0A %0A        int k = l;%0A        while (i %3C n1 && j %3C n2)%0A        %7B%0A            if (L%5Bi%5D %3C= R%5Bj%5D)%0A            %7B%0A                arr%5Bk%5D = L%5Bi%5D;%0A                i++;%0A            %7D%0A            else%0A            %7B%0A                arr%5Bk%5D = R%5Bj%5D;%0A                j++;%0A            %7D%0A            k++;%0A        %7D%0A %0A        while (i %3C n1)%0A        %7B%0A            arr%5Bk%5D = L%5Bi%5D;%0A            i++;%0A            k++;%0A        %7D%0A         while (j %3C n2)%0A        %7B%0A            arr%5Bk%5D = R%5Bj%5D;%0A            j++;%0A            k++;%0A        %7D%0A    %7D%0A    public static void sort(int arr%5B%5D, int l, int r)%0A    %7B%0A        if (l %3C r)%0A        %7B%0A            int m = (l+r)/2;%0A            sort(arr, l, m);%0A            sort(arr , m+1, r);%0A            merge(arr, l, m, r);%0A        %7D%0A    %7D%0A

Create merge_sort.java