Simple swap in J


#1
 public static void rotate(ArrayList<ArrayList<Integer>> a) {

    //only for square matrix;
    int start =0;
    int end = a.size()-1;

    while(start<end) {
        for (int i = start; i < end; i++) {
            int temp = a.get(start).get(i); //0,0
            a.get(start).set(i, a.get(end - i + start).get(start)); //0,0 = 3,0
            a.get(end - i + start).set(start, a.get(end).get(end - i + start)); //3,0 = 3,3
            a.get(end).set(end - i + start, a.get(i).get(end)); // 3,3 = 0,3
            a.get(i).set(end, temp); // 0,3  temp
        }
        start++;
        end --;
    }
    //System.out.println(a.toString());
}