// Se recibe una matriz de cadenas y ordena los datos en un vector // lexicograficamente de menor a mayor. //---------------------------------------------------------------- public class OrdenaMatriz_A_Vector { public static void main(String RAFA[]) { String MAT[][] = {{"Alfa", "Romeo", "Arabe"}, {"Pontiac", "Arbol", "Bocinas"} String VECT[] = new String[MAT.length * MAT[0].length]; ImprimeM(MAT); VECT = Ordena(MAT); ImprimeV(VECT); } static String[] Ordena(String DATOS[][]) { String VECTOR[] = new String[DATOS.length * DATOS[0].length]; String AUX = ""; int r=0, c=0; for (int x = 0; x < VECTOR.length; x++) { or de todas for (int R = 0; R < DATOS.length; R++) for (int C = 0; C < DATOS[0].length; C++) if (DATOS[R][C].compareTo("_") != 0) if (AUX.compareTo(DATOS[R][C]) > 0) { AUX = DATOS[R][C]; r = R; c = C; } DATOS[r][c] = "_"; VECTOR[x] = AUX; } return VECTOR; } static void ImprimeM(String DATOS[][]) { String REN = "", Salida = ""; for (int Ren = 0; Ren < DATOS.length; Ren++) { REN = ""; for (int Col = 0; Col < DATOS.length; Col++) REN += "\t" + DATOS[Ren][Col]; Salida += "\n" + REN; } System.out.println(Salida); } static void ImprimeV(String DATOS[]) { for (int Indice = 0; Indice < DATOS.length; Indice++) System.out.println(DATOS[Indice]); } }