難度 中等
實(shí)際上這道題算是比較簡(jiǎn)單的,關(guān)鍵在于題目要求不占用額外空間躯畴。開(kāi)始以為是指不新增任何變量民鼓,想了好一會(huì)沒(méi)想出來(lái)解決方案,于是硬著頭皮上我認(rèn)為空間度最小的方法蓬抄,結(jié)果通過(guò)了丰嘉,時(shí)間空間都是100。不占用額外空間原來(lái)是指空間復(fù)雜度o(1)就可以了。
public void rotate(int[][] matrix) {
for(int i = 0; i < matrix.length; i++){
for(int j = i; j >= 0; j--){
if(i != j){
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
for(int i = 0; i < matrix.length; i++){
for(int j = 0; j < matrix.length/2; j++){
int temp = matrix[i][j];
matrix[i][j] = matrix[i][matrix.length-1-j];
matrix[i][matrix.length-1-j] = temp;
}
}
}