fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. static void fillData(char[][] iArray)
  11. {
  12. final int SIZE = iArray[0].length;
  13. char cChar = 'a';
  14. for(int i=0; i<SIZE; i++)
  15. {
  16. for(int j=0; j<SIZE; j++)
  17. {
  18. iArray[i][j] = cChar++;
  19. }
  20. }
  21. }
  22. static void display(char[][] iArray)
  23. {
  24. final int SIZE = iArray[0].length;
  25. for(int i=0; i<SIZE; i++)
  26. {
  27. for(int j=0; j<SIZE; j++)
  28. {
  29. System.out.print(iArray[i][j] + " | ");
  30. }
  31. System.out.println();
  32. }
  33. }
  34.  
  35. /*
  36. //Old version
  37. static void reverseDiagonal(char[][] iArray)
  38. {
  39. final int SIZE = iArray[0].length;
  40. for(int i=0; i< SIZE/2; i++)
  41. {
  42. char tTemp = iArray[i][i];
  43. iArray[i][i] = iArray[SIZE-i-1][SIZE-i-1];
  44. iArray[SIZE-i-1][SIZE-i-1] = tTemp;
  45.  
  46. tTemp = iArray[i][SIZE-i-1];
  47. iArray[i][SIZE-i-1] = iArray[SIZE-i-1][i];
  48. iArray[SIZE-i-1][i] = tTemp;
  49. }
  50.  
  51. }*/
  52.  
  53. // New version
  54. static void reverseDiagonal(char[][] iArray)
  55. {
  56. final int SIZE = iArray[0].length;
  57. final int len = SIZE/2;
  58. for(int i=0; i< len; i++)
  59. {
  60. final int j = i+1;
  61. char tTemp = iArray[i][i];
  62. iArray[i][i] = iArray[SIZE-j][SIZE-j];
  63. iArray[SIZE-j][SIZE-j] = tTemp;
  64.  
  65. tTemp = iArray[i][SIZE-j];
  66. iArray[i][SIZE-j] = iArray[SIZE-j][i];
  67. iArray[SIZE-j][i] = tTemp;
  68. }
  69. }
  70.  
  71. public static void main (String[] args) throws java.lang.Exception
  72. {
  73. final int SIZE = 4;
  74. char[][] iArray = new char[SIZE][SIZE];
  75.  
  76. fillData(iArray);
  77. display(iArray);
  78.  
  79. System.out.println('\n');
  80.  
  81. reverseDiagonal(iArray);
  82. display(iArray);
  83.  
  84. }
  85. }
Success #stdin #stdout 0.09s 33876KB
stdin
Standard input is empty
stdout
a | b | c | d | 
e | f | g | h | 
i | j | k | l | 
m | n | o | p | 


p | b | c | m | 
e | k | j | h | 
i | g | f | l | 
d | n | o | a |