Dada una array xn. El problema es ordenar la array dada en orden estricto. Aquí el orden estricto significa que la array se ordena de tal manera que todos los elementos de una fila se ordenan en orden creciente y para la fila ‘i’, donde 1 <= i <= n-1, el primer elemento de la fila ‘i’ es mayor que o igual al último elemento de la fila ‘i-1’.
Ejemplos:
Input : mat[][] = { {5, 4, 7}, {1, 3, 8}, {2, 9, 6} } Output : 1 2 3 4 5 6 7 8 9
Enfoque: cree una array temporal [] de tamaño n ^ 2. Comenzando con la primera fila, uno por uno copie los elementos de la array dada en temp[]. Ordenar temp[]. Ahora, uno por uno, copie los elementos de temp[] de vuelta a la array dada.
Python3
# Python3 implementation to sort # the given matrix SIZE = 10 # Function to sort the given matrix def sortMat(mat, n) : # Temporary matrix of size n^2 temp = [0] * (n * n) k = 0 # Copy the elements of matrix # one by one into temp[] for i in range(0, n) : for j in range(0, n) : temp[k] = mat[i][j] k += 1 # sort temp[] temp.sort() # copy the elements of temp[] # one by one in mat[][] k = 0 for i in range(0, n) : for j in range(0, n) : mat[i][j] = temp[k] k += 1 # Function to print the given matrix def printMat(mat, n) : for i in range(0, n) : for j in range( 0, n ) : print(mat[i][j] , end = " ") print() # Driver program to test above mat = [ [ 5, 4, 7 ], [ 1, 3, 8 ], [ 2, 9, 6 ] ] n = 3 print( "Original Matrix:") printMat(mat, n) sortMat(mat, n) print(" Matrix After Sorting:") printMat(mat, n) # This code is contributed by Nikita Tiwari.
Producción:
Original Matrix: 5 4 7 1 3 8 2 9 6 Matrix After Sorting: 1 2 3 4 5 6 7 8 9
Complejidad temporal: O(n 2 log 2 n).
Espacio Auxiliar: O(n 2 ).
Consulte el artículo completo sobre Ordenar la array dada para obtener más detalles.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA