2차원 배열을 회전하는 Method입니다.
원본 2차원 배열
012
345
우측으로 돌리면..
30
41
52
좌로 돌리면..
25
14
03
public static int[,] RotateRight(int[,] matrix)
{
int lengthY = matrix.GetLength(0);
int lengthX = matrix.GetLength(1);
int[,] result = new int[lengthX, lengthY];
for (int y = 0; y < lengthY; y++)
for (int x = 0; x < lengthX; x++)
result[x, y] = matrix[lengthY - 1 - y, x];
return result;
}
public static int[,] RotateLeft(int[,] matrix)
{
int lengthY = matrix.GetLength(0);
int lengthX = matrix.GetLength(1);
int[,] result = new int[lengthX, lengthY];
for (int y = 0; y < lengthY; y++)
for (int x = 0; x < lengthX; x++)
result[x, y] = matrix[y, lengthX - 1 - x];
return result;
}


