public int[][] transpose(int[][] A) {
int m = A[0].length;
int n = A.length;
int[][] ans = new int[m][n];
if(m == n)// 如果是方阵,直接对称交换就行(高数知识);其实在这里是为了节省时间
for(int i = 0;i < m;i++){
for(int j = 0;j < n;j++){
ans[i][j] = A[j][i];
ans[j][i] = A[i][j];
}
}
}else{ // 不是方阵的话,就慢慢赋值;
for(int i = 0;i < m;i++){
for(int j = 0;j < n;j++){
ans[i][j] = A[j][i];
}
}
}
return ans;
}
java实现矩阵转置(数组,高数的矩阵转置那个意思)
最新推荐文章于 2022-10-28 00:19:26 发布