Código de Pascal/Turbo Pascal - Metodos de ordenación

Imágen de perfil

Metodos de ordenacióngráfica de visualizaciones


Pascal/Turbo Pascal

Publicado el 26 de Abril del 2013 por Administrador
6.276 visualizaciones desde el 26 de Abril del 2013. Una media de 35 por semana
Código que realiza la ordenación de un array constante por el método de ordenación Quicksort, devolviéndolo ordenado.

Versión 1

Publicado el 26 de Abril del 2013gráfica de visualizaciones de la versión: Versión 1
6.277 visualizaciones desde el 26 de Abril del 2013. Una media de 35 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella


Forma parte de La Politecnica.Net
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
{*****************************************************}
{                                                     }
{ Practica del Quicksort (Metodos de ordenacion)      }
{ Copyright (c) 2000 por Raul Zambrano                }
{                                                     }
{*****************************************************}
 
program Quicksort;
uses crt;
type
    vector=array [1..10] of integer;
const
     lista:vector=(8,5,6,3,1,4,2,7,10,9);
var
   k:integer;
   longitud:integer;
 
procedure rapido (var a:vector;n:integer);
    procedure partir (primero,ultimo :integer);
    var
       i,j,central:integer;
       procedure intercambiar (var m,n:integer);
       var
          aux:integer;
       begin
            aux:=m;
            M:=n;
            N:=aux;
       end;
    begin
         i:=primero;
         j:=ultimo;
         central:=a[(primero+ultimo) div 2];
         repeat
               while a[i]<central do
                                  i:=i+1;
               while a[j]>central do
                                  j:=j-1;
               if i<=j then
                       begin
                            intercambiar (a[i],a[j]);
                            i:=i+1;
                            j:=j-1;
                       end;
         until i>j;
         if primero<j then
                      partir(primero,j);
         if i<ultimo then
                     partir(i,ultimo);
    end;
begin
     partir (1,n);
end;
begin
     clrscr;
     k:=0;
     write ('Este es el vector original: ');
     repeat
           begin
                write (lista[k],' ');
                k:=k+1;
           end;
     until k=11;
     writeln;
     rapido (lista,10);
     k:=0;
     write ('Este es el vector ordenado: ');
     repeat
           begin
                write (lista[k],' ');
                k:=k+1;
           end;
     until k=11;
     readln;
end.



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s2362