File tree Expand file tree Collapse file tree 1 file changed +85
-0
lines changed Expand file tree Collapse file tree 1 file changed +85
-0
lines changed Original file line number Diff line number Diff line change 1+ import  java .util .Scanner ;
2+ 
3+ class  MergeSort  { 
4+  void  merge (int  arr [], int  l , int  m , int  r ) 
5+  { 
6+  int  n1  = m  - l  + 1 ; 
7+  int  n2  = r  - m ;
8+  int  L [] = new  int [n1 ]; 
9+  int  R [] = new  int [n2 ]; 
10+  
11+  for  (int  i  = 0 ; i  < n1 ; ++i ) 
12+  L [i ] = arr [l  + i ]; 
13+  for  (int  j  = 0 ; j  < n2 ; ++j ) 
14+  R [j ] = arr [m  + 1  + j ]; 
15+  
16+  int  i  = 0 , j  = 0 ; 
17+  
18+  int  k  = l ; 
19+  while  (i  < n1  && j  < n2 ) { 
20+  if  (L [i ] <= R [j ]) { 
21+  arr [k ] = L [i ]; 
22+  i ++; 
23+  } 
24+  else  { 
25+  arr [k ] = R [j ]; 
26+  j ++; 
27+  } 
28+  k ++; 
29+  } 
30+  
31+  while  (i  < n1 ) { 
32+  arr [k ] = L [i ]; 
33+  i ++; 
34+  k ++; 
35+  } 
36+  
37+  while  (j  < n2 ) { 
38+  arr [k ] = R [j ]; 
39+  j ++; 
40+  k ++; 
41+  } 
42+  } 
43+  
44+  void  sort (int  arr [], int  l , int  r ) 
45+  { 
46+  if  (l  < r ) { 
47+  int  m  = (l  + r ) / 2 ; 
48+  
49+  sort (arr , l , m ); 
50+  sort (arr , m  + 1 , r ); 
51+  
52+  merge (arr , l , m , r ); 
53+  } 
54+  } 
55+  
56+  static  void  printArray (int  arr []) 
57+  { 
58+  int  n  = arr .length ; 
59+  for  (int  i  = 0 ; i  < n ; ++i ) 
60+  System .out .print (arr [i ] + " " ); 
61+  System .out .println (); 
62+  } 
63+  
64+  public  static  void  main (String  args []) 
65+  { 
66+  int  n ;
67+  Scanner  s  = new  Scanner (System .in );
68+  System .out .print ("Enter no. of elements you want in array:" );
69+  n  = s .nextInt ();
70+  int  arr [] = new  int [n ];
71+  System .out .println ("Enter all the elements:" );
72+  for (int  i  = 0 ; i  < n ; i ++)
73+  {
74+  arr [i ] = s .nextInt ();
75+  }
76+  System .out .println ("Given Array" ); 
77+  printArray (arr ); 
78+  
79+  MergeSort  ob  = new  MergeSort (); 
80+  ob .sort (arr , 0 , arr .length  - 1 ); 
81+  
82+  System .out .println ("\n Sorted array" ); 
83+  printArray (arr ); 
84+  } 
85+ } 
                                 You can’t perform that action at this time. 
               
                  
0 commit comments