Given a square matrix of order n*n, you have to interchange the elements of both diagonals.
Examples :
Input : matrix[][] = {1, 2, 3, 4, 5, 6, 7, 8, 9} Output : matrix[][] = {3, 2, 1, 4, 5, 6, 9, 8, 7} Input : matrix[][] = {4, 2, 3, 1, 5, 7, 6, 8, 9, 11, 10, 12, 16, 14, 15, 13} Output : matrix[][] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 11, 14, 15, 16}
Explanation : Idea behind interchanging diagonals of a square matrix is simple. Iterate from 0 to n-1 and for each iteration you have to swap a[i][i] and a[i][n-i-1].
Javascript
<script> // Javascript program to interchange // the diagonals of matrix let N = 3; // Function to interchange diagonals function interchangeDiagonals(array) { // swap elements of diagonal for (let i = 0; i < N; ++i) if (i != parseInt(N / 2)) { let temp = array[i][i]; array[i][i] = array[i][N - i - 1]; array[i][N - i - 1] = temp; } for (let i = 0; i < N; ++i) { for (let j = 0; j < N; ++j) document.write( " " + array[i][j]); document.write( "<br>" ); } } // Driver Code let array = [[4, 5, 6], [1, 2, 3], [7, 8, 9]]; interchangeDiagonals(array); // This code is contributed by subham348. </script> |
Output:
6 5 4 1 2 3 9 8 7
Time Complexity: O(N*N), as we are using nested loops for traversing the matrix.
Auxiliary Space: O(1), as we are not using any extra space.
Please refer complete article on Program to Interchange Diagonals of Matrix for more details!
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!