## scherniak 4 years ago How can i reverse both full diagonal rows(top left to bottom right and top right to bottom left) of a 2d array? (in java) eg 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96 to: 96 26 31 81 41 71 66 56 61 51 46 76 36 86 91 21

1. Narsat

The other algorithm didn't work?

2. scherniak

only reversed the corners, not the full diagonal row

3. Narsat

Hmm, it works fine for me, testing it out with your values and different-sized arrays.

4. scherniak

hmmmmm, weird sorry. do you mind posting it again? (im on a different computer)

5. Narsat

Sure, code is: /** * Method that inverts diagonals * * @param array */ public static void reverseDiagonals(int array[][]){ for(int i = 0; i < array.length / 2; i++){ // We only need to go through half the array int j = array[0].length - 1; // This variable will work the array backwards int temp = array[i][i]; // This will keep temporary value array[i][i] = array[j - i][j - i]; array[j - i][j - i] = temp; temp = array[i][j - i]; array[i][j - i] = array[j - i][i]; array[j - i][i] = temp; } }

6. scherniak

thank you so much, very much appreciated (works of course)