Ask your own question, for FREE!
Computer Science 17 Online
OpenStudy (anonymous):

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

OpenStudy (anonymous):

The other algorithm didn't work?

OpenStudy (anonymous):

only reversed the corners, not the full diagonal row

OpenStudy (anonymous):

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

OpenStudy (anonymous):

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

OpenStudy (anonymous):

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; } }

OpenStudy (anonymous):

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

Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!
Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!