Given a 4 x 4 matrix, we have to interchange the elements of first and last row and show the resulting matrix.
Examples :
Input : 3 4 5 0
2 6 1 2
2 7 1 2
2 1 1 2
Output : 2 1 1 2
2 6 1 2
2 7 1 2
3 4 5 0
Input : 9 7 5 1
2 3 4 1
5 6 6 5
1 2 3 1
Output : 1 2 3 1
2 3 4 1
5 6 6 5
9 7 5 1
The approach is very simple, we can simply swap the elements of first and last row of the matrix inorder to get the desired matrix as output.
Below is the implementation of the approach :
Java
import java.io.*;
public class Interchange {
static void interchangeFirstLast( int m[][])
{
int rows = m.length;
for ( int i = 0 ; i < m[ 0 ].length; i++) {
int t = m[ 0 ][i];
m[ 0 ][i] = m[rows- 1 ][i];
m[rows- 1 ][i] = t;
}
}
public static void main(String args[]) throws IOException
{
int m[][] = { { 8 , 9 , 7 , 6 },
{ 4 , 7 , 6 , 5 },
{ 3 , 2 , 1 , 8 },
{ 9 , 9 , 7 , 7 } };
interchangeFirstLast(m);
for ( int i = 0 ; i < m.length; i++) {
for ( int j = 0 ; j < m[ 0 ].length; j++)
System.out.print(m[i][j] + " " );
System.out.println();
}
}
}
|
Output :
9 9 7 7
4 7 6 5
3 2 1 8
8 9 7 6
Time Complexity: O(N*M), as printing the matrix takes O(N*M) time where N and M are dimensions of the matrix.
Auxiliary Space: O(1), as we are not using any extra space.
Please refer complete article on Interchange elements of first and last rows in matrix for more details!