For a given 4 × 4 matrix, the task is to interchange the elements of the first and last rows and then return the resultant matrix.
Illustration:
Input 1: 1 1 5 0 2 3 7 2 8 9 1 3 6 7 8 2 Output 1: 6 7 8 2 2 3 7 2 8 9 1 3 1 1 5 0 Input 2: 7 8 9 10 11 13 14 1 15 7 12 22 11 21 30 1 Output 2: 11 21 30 1 11 13 14 1 15 7 12 22 7 8 9 10
Approach:
To get the required output, we need to swap the elements of the first and the last row of the stated matrix.
Example
Java
// Java Program to Interchange Elements of First // and Last Row in a Matrix // Importing input output classes import java.io.*;
// Main Class public class GFG {
// Method 1
// To swap First and Last Row
static void swap_First_last( int mat[][])
{
int rws = mat.length;
// Interchanging of elements between the
// first and last rows
for ( int j = 0 ; j < mat[ 0 ].length; j++) {
// Using temporary variable so in order
// not to lose the values of the matrix
// Simply, swapping the values stored
int temp = mat[ 0 ][j];
mat[ 0 ][j] = mat[rws - 1 ][j];
mat[rws - 1 ][j] = temp;
}
}
// Method 2
// Main driver method
public static void main(String args[])
throws IOException
{
// Input integer matrix
int mat[][] = { { 2 , 3 , 4 , 5 },
{ 8 , 9 , 6 , 15 },
{ 13 , 22 , 11 , 18 },
{ 19 , 1 , 2 , 0 } };
// Display message only
System.out.println( "Input matrix is as follows : " );
// Printing the Input matrix
for ( int j = 0 ; j < mat.length; j++) {
for ( int k = 0 ; k < mat[ 0 ].length; k++)
// Print the elements of the input matrix
System.out.print(mat[j][k] + " " );
// New line as row ended
System.out.println();
}
System.out.println(
"Swapped matrix is as follows : " );
// Calling the (method1) to swap rows in a matrix
swap_First_last(mat);
// Printing the Swapped matrix
for ( int j = 0 ; j < mat.length; j++) {
for ( int k = 0 ; k < mat[ 0 ].length; k++)
// Print the elements of the swapped matrix
System.out.print(mat[j][k] + " " );
// New line as row ended
System.out.println();
}
}
} |
Output:
Input matrix is as follows : 2 3 4 5 8 9 6 15 13 22 11 18 19 1 2 0 Swapped matrix is as follows : 19 1 2 0 8 9 6 15 13 22 11 18 2 3 4 5
Time Complexity: O(n*m) where n and m are numbers of rows and columns respectively.
Auxiliary Space: O(1)