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:
C++
// C++ code to swap the element of first // and last row and display the result #include <iostream> using namespace std; #define n 4 void interchangeFirstLast( int m[][n]) { int rows = n; // Swapping of element between first // and last rows for ( int i = 0; i < n; i++) { int t = m[0][i]; m[0][i] = m[rows - 1][i]; m[rows - 1][i] = t; } } // Driver code int main() { // input in the array int m[n][n] = {{8, 9, 7, 6}, {4, 7, 6, 5}, {3, 2, 1, 8}, {9, 9, 7, 7}}; interchangeFirstLast(m); // Printing the interchanged matrix for ( int i = 0; i < n; i++) { for ( int j = 0; j < n; j++) cout << m[i][j] << " " ; cout << endl; } } // This code is contributed by Anant Agarwal. |
Output :
9 9 7 7 4 7 6 5 3 2 1 8 8 9 7 6
Time Complexity: O(N), as we are using a loop to traverse N times.
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!
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!