| Utilizza l'algoritmo di fusione su un vettore. Procedure MERGESORT(Var V: Vettore; Inf, Sup: Integer);
Var
   Medio: Integer;
begin
   if(Inf < Sup) then
      begin
         Medio:=(Inf+Sup) Div 2;
         MERGESORT(V, Inf    , Medio);
         MERGESORT(V, Medio+1, Sup  );
         Merge(V, Inf, Medio, Sup);
      end;
end;Esempio 1V={1, 3, 7, 4, 15, 0, 9, 10}Gli indici Inf e Sup assumono i valori 
	
		| 1...8 |  
		| 1..4 | 5...8 |  
		| 1...2 | 3...4 | 5...6 | 7...8 |  
		| 1...1 | 2...2 | 3...3 | 4...4 | 5...5 | 6...6 | 7...7 | 8...8 |  e il vettore diventa 
	
		| {1, 3, 7, 4, 15, 0, 9, 10} |  
		| {1, 3, 7, 4} | {15, 0, 9, 10} |  
		| {1, 3} | {7, 4} | {15, 0} | {9, 10} |  
		| {1} | {3} | {7} | {4} | {15} | {0} | {9} | {10} |  
		| {1, 3} | {4, 7} | {0, 15} | {9, 10} |  
		| {1, 3, 4, 7} | {0, 9, 10, 15} |  
		| {0, 1, 3, 4, 7, 9, 10, 15} |  V={0, 1, 3, 4, 7, 9, 10, 15}Esempio 2V={1, 3, 7, 4, 15, 0, 9, 10, 8, 2}Gli indici Inf e Sup assumono i valori 
	
		| 1...10 |  
		| 1..5 | 6...10 |  
		| 1...3 | 4...5 | 6...8 | 9...10 |  
		| 1...2 | 3...3 | 4...4 | 5...5 | 6...7 | 8...8 | 9...9 | 10...10 |  
		| 1...1 | 2...2 | 6...6 | 7...7 |  e il vettore diventa 
	
		| {1, 3, 7, 4, 15, 0, 9, 10, 8, 2} |  
		| {1, 3, 7, 4, 15} | {0, 9, 10, 8, 2} |  
		| {1, 3, 7} | {4, 15} | {0, 9, 10} | {8, 2} |  
		| {1, 3} | {7} | {4} | {15} | {0, 9} | {10} | {8} | {2} |  
		| {1} | {3} | {0} | {9} |  
		| {1, 3} | {0, 9} |  
		| {1, 3} | {4, 7} | {0, 15} | {9, 10} |  
		| {1, 3, 4, 7} | {0, 9, 10, 15} |  
		| {0, 1, 2, 3, 4, 7, 8, 9, 10, 15} |  V={0, 1, 2, 3, 4, 7, 8, 9, 10, 15} |