Haz una pregunta »

Ordenamiento por fusión – Recursividad

Junio 2013


A continuación un procedimiento que permite ordenar una matriz de n enteros utilizando el método de ordenamiento por fusión:
 Procedure Ordenamiento_Fusion (Var t : TAB; g, d : integer);
Var
   m, i, j, k : integer;
   s : TAB;
Begin
     If d > g Then
     Begin         
          m := (g + d) Div 2;
          Ordenamiento_Fusion (t, g, m);
          Ordenamiento_Fusion (t, m + 1, d);
          
	    For i := m DownTo g Do
              s[i] := t[i];
          
	    For j := m + 1 To d Do
              s[d + m + 1 - j] := t[j];
          
	    i := g; j := d;
          For k := g To d Do
          Begin
               If s[i] < s[j] Then
               Begin
                    t[k] := s[i];
                    i := i + 1;
               End
               Else
                   Begin
                         t[k] := s[j];
                         j := j - 1;
                   End;
          End;
     End;
End;

Véase también

Comunidad de asistencia y consejos.

Tri par fusion - récursivité-
Tri par fusion - récursivité-
Por ZOUARI el 14 de enero de 2008
Merge sort - Ricorsione -
Merge sort - Ricorsione -
Por zig@ el 11 de marzo de 2010
Ordenação por fusão - recursão
Ordenação por fusão - recursão
Por pintuda el 11 de marzo de 2010
El artículo original fue escrito por ZOUARI. Traducido por Carlos-vialfa.
Este documento intitulado « Ordenamiento por fusión – Recursividad » de Kioskea (es.kioskea.net) esta puesto a diposición bajo la licencia Creative Commons. Puede copiar, modificar bajo las condiciones puestas por la licencia, siempre que esta nota sea visible.
Recibe nuestro newsletter

salud.kioskea.net

Desplazar los elementos de una matriz (Rotación) – Recursividad
El Ordenamiento de Burbuja – Recursividad