Pascal/Turbo Pascal - como ordenar datos en una matriz

 
Vista:

como ordenar datos en una matriz

Publicado por Lucas (7 intervenciones) el 01/02/2005 21:23:53
Hola! tengo q hacer un programa y en una parte ya tengo cargada una matriz de 200x5 y quiero saber si existe algun algoritmo q me permita ordenar la matriz por fila para luego poder hacer una busqueda binaria por fila tambien. Muchas gracias y espero q me puedan ayudar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:como ordenar datos en una matriz

Publicado por Hurricane (12 intervenciones) el 01/02/2005 21:56:44
Veamos. Tienes una matriz de 200 filas por 5 columnas.

1 2 3 4 5
2.............
3.............
200.........

Sería cosa de transformar la corrdenada en una posición lineal y utilizar cualquier algoritmo de ordenamiento. Las siguientes rutinas consideran la existencia de la posicion lineal '0' (cero).

Aquí, X=Columna (1..5) e Y=Fila (1..200).
1
2
3
4
5
6
7
8
9
10
11
12
13
{Transforma "Fila, Columna" en una psición lineal}
Function XYtoPos(Fila, Columna :Byte) :Word;
    Begin
          XYtoPos := (Fila-1)*200+Columna-1;
    End;  {XYtoPos}
 
{Transforma una posició lineal en "Fila, Columna"}
Procedure PosToXY(Pos :Word; Var Fila, Columna :Byte);
    Begin
         Inc(Pos);
         Columna := Pos Mod 200;
         Fila := (Pos Div 200)+1;
    End; {PosToXY}
Espero te sirvan. Saludos ;-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:como ordenar datos en una matriz

Publicado por Lucas (7 intervenciones) el 02/02/2005 22:14:01
Gracias! muy buena tu idea, pero lamentablemente no me sirve para el problema en cuestion. Igual ya lo pude resolver de otra forma. Muchas Gracias nuevamente!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar